<SEC-DOCUMENT>0000924168-22-000088.txt : 20221110
<SEC-HEADER>0000924168-22-000088.hdr.sgml : 20221110
<ACCEPTANCE-DATETIME>20221110081832
ACCESSION NUMBER:		0000924168-22-000088
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		83
CONFORMED PERIOD OF REPORT:	20220930
FILED AS OF DATE:		20221110
DATE AS OF CHANGE:		20221110

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:			OH
		FISCAL YEAR END:			1231

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

	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-20220930.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version="1.0" ?><!--XBRL Document Created with Wdesk from Workiva--><!--Copyright 2022 Workiva--><!--r:a82ef2f0-ede8-4d32-8f58-fa18bc743a3a,g:58e0cf05-7a74-4b84-ba8e-bd6d336a4f21,d:3e35699d61d94f84beb74724f5f81a53--><html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns="http://www.w3.org/1999/xhtml" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:srt="http://fasb.org/srt/2022" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:efoi="http://www.energyfocusinc.com/20220930" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>efoi-20220930</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityCentralIndexKey" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl80LTEtMS0xLTc2OTEw_6c314e14-bf6b-4dd5-aed5-94f8fbfd1922">0000924168</ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:CurrentFiscalYearEndDate" format="ixt:date-month-day" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl81LTEtMS0xLTc2OTEw_ff2b0f28-230c-4541-9da1-0cb7f6941e5c">12/31</ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:DocumentFiscalYearFocus" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl8xMy0xLTEtMS03NjkxMA_b4a24818-8f3a-4f9a-9132-8f54bd501091">2022</ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:DocumentFiscalPeriodFocus" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl8xNC0xLTEtMS03NjkxMA_79d87f55-8f2d-4159-bc01-a507547fa0dd">Q3</ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:AmendmentFlag" format="ixt:fixed-false" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl8xNS0xLTEtMS03NjkxMA_718b0e4c-79d3-4079-b768-6ccf0362675f">FALSE</ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityRegistrantName" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGV4dHJlZ2lvbjo2ZmE4MGRjODYzM2E0NzJiYjEyMzY1ZWYwZTlkYzhlMV8zMQ_554643f2-15cc-494e-bf21-65d731d36985">ENERGY FOCUS, INC/DE</ix:nonNumeric><ix:nonNumeric contextRef="i2a8600f826034451907b4cfda63c037d_D20220101-20220930" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_3aa032ef-d1be-49b9-9d46-a1940c7bf3fc">P5Y</ix:nonNumeric><ix:nonNumeric contextRef="ie595f06efc5045a7bf3459e93a5888bd_D20220101-20220930" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_c24d493e-2d1f-4b2e-a4a3-7b64303ed106">P5Y</ix:nonNumeric><ix:nonFraction unitRef="number" contextRef="i1ecd922e83a84d32bd6d77bac81fe2ae_D20200611-20200611" decimals="INF" name="us-gaap:StockholdersEquityNoteStockSplitConversionRatio1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182Ny9mcmFnOmI5MzA0ZmYwYWMyZjQ2YTY5M2UwYTdiZTljZDE2YjRmL3RleHRyZWdpb246YjkzMDRmZjBhYzJmNDZhNjkzZTBhN2JlOWNkMTZiNGZfMTk1_05d6277d-561f-4a9b-9951-1b5c7cba203f">0.2</ix:nonFraction></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="efoi-20220930.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i11265eef4aad46d794d22dea392c6203_I20221107"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-11-07</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="iaba68d5a70d14ff5a89c129277c344a3_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:context id="iccb5853c99c2404bb5efc9cb815cab83_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-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="i3d38772d0d82451f9709b001f8b523db_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i955e67119eab4fb9a16c2e4056e33b77_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7987942e09e2471ba2865ed8c06221f0_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i72e0031688394ae5a40114993adad6a7_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i45acacd8e3644f8e9ed598ea4ea01d04_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3ad53c06ea0c4f26a6658e9579659547_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8fa2c8c1cb0e4075b272d7cf5ab91a6b_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2f420c0ba76a4b158cc9e9783809ad32_D20220101-20220331"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i328f4bb2ed174e6ea382ce91e1950744_D20220101-20220331"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic42811ba035e48908dd8c1fba25ebace_D20220101-20220331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i36d609f995bd456d8c811559e575f5a2_D20220101-20220331"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia002702261534e99a86b51805aa35694_I20220331"><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>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i16c1aa523b6d44b38703ff85f1de1a85_I20220331"><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>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib4bc8cffa3b540cfa510dca926048535_I20220331"><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>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1f6ce61750d94268a9797ab11937a018_I20220331"><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>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i41317a18bbe7441eba3cd26f18efe456_I20220331"><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>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i80309221754f4f1fbd7ebe9b2bd1fd4c_I20220331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i27f43545072145d8b67c44614d856844_D20220401-20220630"><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>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630"><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>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i26993206f60147df9c3afee6f7e56990_D20220401-20220630"><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>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib27fac473a954075a698cab0d8c7a4b0_I20220630"><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>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icf5e7ab6b92f42ccafe6eacbe095e3d5_I20220630"><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>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie83b6cce937a4ea5b744c29249335c2a_I20220630"><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>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i151a406e716441da886a4ff8caabb71e_I20220630"><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>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia7ff53291113483ba29d1d932d8513aa_I20220630"><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>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i682c94a884c54808853513b639aaddba_I20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icc215aa7d53b4bc48a392c6a41f72521_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5c3eab43eaee4a109a5db8730847787f_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie1eda9d3bbbd441993d7ab74ea4b0f71_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i54814654e2da4cd18301f0c1fcd4ebf3_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if9335ddc4af449ddbe8158ac552d0a1e_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i680fcb3afcbe42a9ac1a36186c12588a_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7a9e0e9059fb4fe3b9ee14d9782d254d_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i87ee04552afd4559b4e08cd2646c428c_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id2a97eb146344d1f80c8b08ffc710bfe_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="i7c1032415f4d4c3788fe4265579e52c3_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="i470facc83bc144549bda99f38a36a4c3_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="i213d4b0a10204929b6931781d2291628_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="i5acde0ce46da4dcfaecef72e955e0963_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="i665a74c29f70404086fd8174e737d9ae_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:context id="i2e5cb75f952146cfafd3f50cee3d0f62_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="i86764f26015b4a8b83676c1940ed78e4_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="i26bb66f827304d46a3935f73d2dc6dfd_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:context id="i21d7e292c62e483aba098b2a517bab34_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="i22a33ab9df0045418c5db95d468e7c75_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="i585a56b922c640ce89652fbdf6d902a0_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="if59253d3904443d19142f72b9cfbd593_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="i54c20001f98e4b7088878f0e4434111f_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="ie694b4b7a1f2408b93d96398305e67dc_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="i2a52ce3f141b427ab0691b45fb7f1ee9_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="i6914353c61624cbb8977a9af61eb9588_D20210401-20210630"><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-04-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630"><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-04-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></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="ia7b2dd69ecbb455c812af98f55862fce_D20210401-20210630"><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:startDate>2021-04-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i00b0d086d3ab49c8a683d8954cf4fef5_D20210401-20210630"><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-04-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic428e490269a445cbf67999688fa8a64_I20210630"><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-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i955d48b41786498d99765ea89cb30e42_I20210630"><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-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i83dae07318134e1cba6b3cebed12e101_I20210630"><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-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i916bec6489234285bc4faba48c47531d_I20210630"><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-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iddc2642da66c4728b01d64e14a2f60e1_I20210630"><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-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5be37111720b4e3db2683efa15ba1627_I20210630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iab8b96e992724c5f947eff170136e04b_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib0b46a49c3e9483f895f7fb43af1d2ae_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ide7c515d7b5c49778860043e22c26b9e_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i37c5bc61bc3847df8ee41d36acdd3f6b_I20210930"><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-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i17b7e1a0f0bd4e0895f819e366d44764_I20210930"><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-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibc54bb183c774a3380ffa16006ed5181_I20210930"><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-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i114dc05fb5c64306936cb8d143be1e55_I20210930"><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-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8f44bbd95f6f46c08323693a8d071dfe_I20210930"><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-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0c342207ebd74923bd8a639b59b00f4f_I20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i18c689fb0f414e3eb031cde5879f5268_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i91e93d00b627463cba94c43dd3d1a008_D20210701-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8a79c33feff848359dd54eec991a97f6_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id9521dddca564db0a623980c42c97b0e_D20210101-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic61ce08aeede4ac7beee549cbfb8591a_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i176368470a454b5aaa77dcbae6ab3f2d_D20210701-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib76b892bcc8a44c098293a01fa41865f_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i75cceb313bf04e6b998e12638d958d7f_D20210101-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i37f4c9acc3e84d8589b8090148a76c4b_D20220701-20220930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="i6d1f5375b6c449b683d6f36eef2b9818_D20210701-20210930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5800fccfc6b34922ac202430d4a66a4a_D20210701-20210930"><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><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:ShipbuilderForUSNavyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if37ada2510094a07a155169b18c4fc52_D20210701-20210930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie3a7432bc77b4b52ba3fc4e82f9e6617_D20210701-20210930"><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><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib42f96b7a9ef42958902850aa8da2a07_D20220101-20220930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8fbc883572984a8db2394a7424b018ce_D20220101-20220930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i12126535a0fc4e958a3056dc027bb8e7_D20220101-20220930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:CommercialBuildingSystemsProviderMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idf78687acd0a453da6d6a1491a0d86fe_D20220101-20220930"><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><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7d5bd3f5b1044e9eb88a46e2b6f10b52_D20210101-20210930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i59b4afaff0e54a2aa40df1997cfefdba_D20210101-20210930"><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><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:ShipbuilderForUSNavyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i153fde08482f49c5805c0eac12afbc2a_D20210101-20210930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i46ace4c4778e4e2c98558315008887d0_D20210101-20210930"><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><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i607a49302ca54560b819864785669346_D20220101-20220930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i82f9247d41564f12b19716497b0e894b_D20220101-20220930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:CommercialBuildingSystemsProviderMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic32feaaefe8f4d1ca318e81d1b95a5ad_D20220101-20220930"><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><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:USNavyMechanicalContractorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i64dfeecdee55408ba8766b6f20b3409c_D20210101-20211231"><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><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSDepartmentOfDefenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i896af6da142744728609e22fd51555e1_D20210701-20210930"><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><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:ShipbuilderForUSNavyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4d7fb0d31bca438baa1a780ce7f8a55f_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">efoi:TotalExpendituresMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4f7a65ca10534d1bacbb2510731f2218_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">efoi:TotalExpendituresMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i40025df90bd74afeb2e9c863a024524b_D20210701-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">efoi:TotalExpendituresMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i29deb08bfce44cdb8d52f6ec6180beb6_D20210101-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">efoi:TotalExpendituresMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icb9710d710d94438aaa44c0d3eeea12b_D20220101-20220930"><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:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i98875a9fd97e463b943e870204e8a130_D20210101-20211231"><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:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib6c4d1b96db94b7e96e122931182a3d1_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie5bbb9452ad74f3686293bff9ccff1ef_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5c999f042b6d45b98aae39612a0c2f6a_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if8d831283e96493096d152b5734ddaad_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ifbbc8e2db54146eb8f8964e46e5cb19c_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i46a150e0d07a49bf9a0c27bb0e38ed1a_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i053f5844d2cb4947b57d374b1c41e110_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0eefc069d9d842f6a9222615d705a3d4_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4068fc9bca6746ad9993ef75d567d291_D20220701-20220930"><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="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2f5f0d28ce19493dbd2e4fa1e79d641c_D20220101-20220930"><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="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7d95b9eb53cd427c85ff41ec3ef9c73b_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icbf888d313d64174882c185ba203e2b2_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1abbb7b455da4f6ea40a3c72ba069b13_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i549805fad92b42eca5ce18f05b2411ec_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i94743c8c339a4a698bd9f322be49c248_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i12f89771e5024f029d3dc49537f86a70_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8f74a9e581e94e3db1059280cbfe8c07_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib89d3b33574f4f60bbf58f4f5aa84bf3_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i15c650a4eaa14a1fa20d6d3d662b41b9_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idc8b649a3ca24d27aa950369a45b0f50_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2a8600f826034451907b4cfda63c037d_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMLEDProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie595f06efc5045a7bf3459e93a5888bd_D20220101-20220930"><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:CommercialProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9d2ec8f43f314ebcae8cfdecdf9fde7d_D20220101-20220930"><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:CommercialProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0ef25f5a819d48a08bda5c3f3fbb956b_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMLEDProductsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-06-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib6093e256b84497da804afffdc20ab61_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i39cef58f6ce245ceb3e58ca2aa026921_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">efoi:PreFundedWarrantsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">us-gaap:WarrantMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icbe2c1b605284d9ea336fc4b0c5b94b6_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-12-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9ce48cbac2a74e9d94e19ade81ea2ba2_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8ddadf8727d94cc6b7723121484c1cd6_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">efoi:PreFundedWarrantsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">us-gaap:WarrantMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i748bb2380fea4959930dec8b4d178b77_D20211216-20211216"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">efoi:PreFundedWarrantsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-12-16</xbrli:startDate><xbrli:endDate>2021-12-16</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i767ac6894c76456c8094aa95c522cc82_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i81f0616158c84d3fb1b6440205bf4b1f_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"><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-06-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0faf6b8b75e64d60b8cca4f20ea1033d_I20210630"><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-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie0406c176cd64530aa241398cd71c792_D20210601-20210630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-06-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i12d643b8880e4367bc65f29dd3283f8b_D20220101-20220331"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020InstitutionalInvestorMember</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="i75c44893e522482d9da770d544c0738f_I20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020InstitutionalInvestorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if6df7ef067004660ab3ca010df7407c3_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="ieaa31e67c19d4a1abf7787241d1751d0_I20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingPrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i11a6b7ac29a64570a16688c65c0b2098_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ife2256486c774b86ada936065734d99d_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7c5ac06956994272be453a5b5ee648f3_I20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i06883d1c8c934bbb8b0580de82e8da76_D20210101-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia1df6a9ccabb4f79b31bd886a2658fa8_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><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="i9fd2512855984eebaa00786549fbb063_D20210101-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i68d6701437424d0099a8bc50df3a69c3_I20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if962f91bd3a94df6aae226599884db1d_D20220901-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:A2022PromissoryNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-09-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7bb635b2936646fd95b0eba62bd3b2a0_D20220401-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib742238870fe478a8e2dec1d4e5d846d_D20210401-20210430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-01</xbrli:startDate><xbrli:endDate>2021-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8d5a9099f5794e149564f34403f84182_I20220823"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-08-23</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="d"><xbrli:measure>utr:D</xbrli:measure></xbrli:unit><xbrli:context id="ic7790ed3f19d47b4b19ed5db52c91404_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="i4205067b75474f23a9af870a7acc0c11_D20201201-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i659a22b1f88d43dd8304aab21de18fde_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i60ee0e8736cc496c846b2201240c84a6_D20220101-20220930"><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="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1238089d6da54d3c8539d51de8626cda_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9a7128568ce2469894023f4f6893b7bf_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i24ce2512c7d24aa699d52a6a11351c14_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i830a5fc1ff324ae2a118bd1054516a3c_D20220101-20220930"><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="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i86dcc6fe9135449ba9d46e0677d6b66a_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6b8e752b884f4eb08571d66b9b0dcd17_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie0b83f3b603e49478cb9610d3da391dc_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7a590b8ad79c4667af1d3cd26ffcb56d_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7c439466ba374205986fa7cb14be2a0b_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia5562b5bdb584c64835b3f2bb0e9439f_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3e344b971b5a476691993700b1257fbd_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9612b013077d42318d0d5227ee973c48_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iabd9dc0011de493fa7d5694fec513177_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibbf4fde323d2407c8d23f7b6e5b0b288_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib04900d5da684b8290217bf5396c4518_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib51bc3cbc26c483088e0902b28039501_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i90c363b72c2c474fbafe16c0ed016d62_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i19afb847ee1b409e8afdd00bb3187db3_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:UltravioletCLightDisinfectionRobotsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6b68b29bf54b4763a478d9538bdbded1_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:UltravioletCLightDisinfectionRobotsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib7f854dbc9e847d7982f8d9eda2357cd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:UltravioletCLightDisinfectionRobotsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icc913f9acb27416c8be4ca7f04596c4d_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i791e06876671458fb0b76c5c1ec3b640_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id8164c90a0cc4543850c20165375ea5f_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:UltravioletCLightDisinfectionRobotsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3ac220694ef94d599b5c4bcd6bc2f797_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:RealEstateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9446277efb414c7394ebb1b0c8aebd3d_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:unit id="creditfacility"><xbrli:measure>efoi:creditFacility</xbrli:measure></xbrli:unit><xbrli:context id="i18ff291df7b8496cb9875868c6794628_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="ica765d7e1dd64880aa3b5af97188883b_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: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="if71eac1a49294bdc9b5803cead4065ae_I20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember><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="i3c82664ebcef4ec8bf8b99764b232564_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic8af432b0fc54d44a9d407badbc5a3cd_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i10b7d00133c949799bb2b40563bb4c8f_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="i971c9edf22194ca1a8067ef5d3d289ff_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0ecf8623aa0841ef9793311037e6ac63_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0a615a216f2a4c009ef7875759edf4c6_D20220811-20220811"><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>2022-08-11</xbrli:startDate><xbrli:endDate>2022-08-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie762edb4f9d24e66a3ffb1b02b4080e5_D20220901-20220930"><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>2022-09-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i196ba82f2e6240a8b6c413dfcc04dd31_I20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id3d5f742cace4efb8dfae66add4b2ac1_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli: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">efoi:WallStreetJournalHighestPrimeRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibb51bc029bfa4e51af056061a860e167_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli: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">efoi:WallStreetJournalHighestPrimeRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i905894c4d5bc4eda86e1b7978f996e3f_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i53563dc83c6742ab84eaea9a54e206f0_D20200811-20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</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="i23f3a31d94194ab0b7d658e82442a131_D20220811-20220811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-08-11</xbrli:startDate><xbrli:endDate>2022-08-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic3a263d6a4e54941b0cae626cdaf3842_D20220901-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-09-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:A2022PromissoryNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-09-16</xbrli:startDate><xbrli:endDate>2022-09-16</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie76c4408e5e7447794eacfc4da73a57d_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:A2022PromissoryNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if6e668f6124e450d84a74981dedfb0ee_I20220421"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-04-21</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-21</xbrli:startDate><xbrli:endDate>2022-04-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i389bf4726fa24bae9f309a337b67ce6e_D20220421-20220421"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-21</xbrli:startDate><xbrli:endDate>2022-04-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2d71d179ac9d45ee8f2360098e53dba3_D20220421-20220421"><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:A2022StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-21</xbrli:startDate><xbrli:endDate>2022-04-21</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i414b414730cb486699f40f17b197d20f_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8e1fec4673e546bba94f07db1122b8a2_I20210427"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-04-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</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="i2e938b483e9c44d8a2997c541f085160_D20210427-20210427"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</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="i86c7dafd35b7400bae6e5f62e5db0929_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:A2021StreetervilleNoteMember</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="i498ed019b5194c86b2cc36ba153b0b61_D20221001-20221031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-01</xbrli:startDate><xbrli:endDate>2022-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i81c56b06f30049639c85bc9c0500b505_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if84f49ab63ca4d8ab1bcf8d266e47b60_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i66532045d3ec4a78a77591cbe026cc94_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="i93d30f8a964643aab7ca91a6bfd8ee01_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="iea8d7ac65a5c4beabc4e0669316eaf21_D20210101-20210930"><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>2021-01-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i617257e7faeb4beca533ed983b2f58d4_I20211231"><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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0323c9f2e709499388c55edfd47a2d07_I20211231"><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>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if941b58136404dd4b535ca1bc12bedb8_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="i7343d6d5c7c048638231d8662dbd503d_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="iefd5eddb0814490fbd704f2c74f89146_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:PreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</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="i7219bd37e0e6448194c0a85983fa741e_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><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</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="i89f85dc38f7d456ba4d0a27b9e8c44d5_D20220101-20220331"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib271d367f3b04cd99dca3bb663f64887_D20220101-20220331"><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:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iceb133a95ec34a90beb603793c0c1a16_I20211231"><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="srt:CounterpartyNameAxis">efoi:FusionParkLLCMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i09164e6fe4e24b1aad0d2a0cb0b3971e_I20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">efoi:BrilliantStartEnterpriseIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3a1985fdb73c40eab7774a091c39b414_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="i0f75433f2ab04afc9e0f49ca98b865a5_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="i8db87dbfef0c4d6285dee961db52fe03_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="i91458235d2144bf784b39565efa69ba2_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="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</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="ib0bd1c8c0ccc4c3c9f0db9404c231979_D20220101-20220331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4a27914cc205482c8bd58c311de25f66_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia8c1cf4af256477a9f3312f157d59e00_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7b877e19c76246d8bd05cd62af67b8a9_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i442abdaea1d04ae9bdd98e8d7dece558_D20220701-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingPrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i39bebab66ddb43608243763645f6ca3d_D20210701-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingPrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic8492b48531b4b3cabdd6d3da9335a79_D20210701-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia5a502486aba455ebed2e3223c3362a0_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i23d7b0e9696d4a529a7dcd257570a4fb_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ideff6cde4d7b407386a6407f451b309d_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id89dc8d72db14b00ac47698037f60b6f_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3b21fc5eda514b8badcc6afdeebf4f09_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib6ec7d497d754f3499b69d7e7f71ba80_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idf9b91958ac74d2ba2d17c5d5094693f_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if76c9109bee6465395764fb4affa8ad3_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibac8b1f026a84b7b9acd8bc716fb5ba6_D20220701-20220930"><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>2022-07-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i38d603fde1ae40219a02697631cdc470_D20210701-20210930"><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-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id5d44e14724b473083ad6434de1ccffc_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia7aa25b3113e426998f8d7cacbbbd50c_D20210101-20210930"><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-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3907598e54964033bfdff8d85a946082_D20220101-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1b2deadd99aa4fffa0a17c415fc8f198_I20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6903be08e4a8455297987e3aa2b285cf_I20210930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie4c9f0482b664da7bec8b76bf482f1c1_I20211231"><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-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia3b35a926924443c945b946003d4ba41_D20220101-20220930"><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>2022-01-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib3fb6995edf04fadb00176f749207754_I20220930"><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>2022-09-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1ecd922e83a84d32bd6d77bac81fe2ae_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="id958e8a3a7f94c5db78db2d7543b0efa_D20221001-20221231"><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>2022-10-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia031c454919a4e79b6e09138bcf7cda2_D20231001-20231231"><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>2023-10-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2eabe6d2a37a422989c84893dd332210_D20230617-20230617"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:A2022PromissoryNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-17</xbrli:startDate><xbrli:endDate>2023-06-17</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia7a575e13a97477c95fcce5d364e94f4_D20221109-20221109"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-09</xbrli:startDate><xbrli:endDate>2022-11-09</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0f027af04d83467b80f12eee9555de10_D20220901-20220930"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-09-01</xbrli:startDate><xbrli:endDate>2022-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icba1b582d7184316b754105405aecfd3_D20221104-20221104"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:HuangNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-04</xbrli:startDate><xbrli:endDate>2022-11-04</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic107134d856e4cd68956b82d3af98975_D20221001-20221031"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:HuangNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-01</xbrli:startDate><xbrli:endDate>2022-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibf6599b235b243f6904e6a6ea6d49bc9_I20221010"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:OctoberPartitionedNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-10</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic18b07c002bb481c99be9c8a3e22ef20_D20221010-20221010"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">efoi:ExchangeAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="efoi:PromissoryNoteAxis">efoi:PartitionedNoteMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-10</xbrli:startDate><xbrli:endDate>2022-10-10</xbrli:endDate></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i3e35699d61d94f84beb74724f5f81a53_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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:DocumentType" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODUx_12f0442f-a431-4eae-9f69-1ef8d76dbb4e">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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:DocumentQuarterlyReport" format="ixt:fixed-true" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NmI0ODUwMzY0N2Y3NGZhYTlkYWRlMzlmZWQ0MDVjYTkvdGFibGVyYW5nZTo2YjQ4NTAzNjQ3Zjc0ZmFhOWRhZGUzOWZlZDQwNWNhOV8wLTAtMS0xLTc2OTEw_0f5a1d9a-3593-424c-bc8b-7a3020114609">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xMjI_2480e857-9b82-435d-80d9-16761e13f0cd">September&#160;30, 2022</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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:DocumentTransitionReport" format="ixt:fixed-false" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NDM2NzE1NmNkNWVjNDMxODgyZTU0YmZjMDdhMTY5M2YvdGFibGVyYW5nZTo0MzY3MTU2Y2Q1ZWM0MzE4ODJlNTRiZmMwN2ExNjkzZl8wLTAtMS0xLTc2OTEw_e6a53165-0048-4b70-83d0-d4dbdf55877f">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityFileNumber" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODUy_2e78d6c1-40bb-4776-abe7-ee2994d3b82f">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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8wLTAtMS0xLTc2OTEw_404fc9db-19d3-4bc2-a85a-afd31f76acd4">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityTaxIdentificationNumber" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8wLTItMS0xLTc2OTEw_d8c1312c-5c55-4055-abf1-8e88580ba56a">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityAddressAddressLine1" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8zLTAtMS0xLTc2OTEwL3RleHRyZWdpb246NGRhOTgyM2Q2ZGY5NDdiZWFjNDA5NWFkMzQzZGQyNTdfNA_c92c5c8d-d9a7-421a-ad4c-097be0a224de">32000&#160;Aurora&#160;Road</ix:nonNumeric>, <ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityAddressAddressLine2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8zLTAtMS0xLTc2OTEwL3RleHRyZWdpb246NGRhOTgyM2Q2ZGY5NDdiZWFjNDA5NWFkMzQzZGQyNTdfOA_f0eb6c44-0d0d-4fb2-acd7-6747b6170acc">Suite B</ix:nonNumeric> <ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityAddressCityOrTown" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8zLTAtMS0xLTc2OTEwL3RleHRyZWdpb246NGRhOTgyM2Q2ZGY5NDdiZWFjNDA5NWFkMzQzZGQyNTdfMTE_f4a29655-e995-40bb-9007-35855db270f8">Solon</ix:nonNumeric>, <ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityAddressStateOrProvince" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8zLTAtMS0xLTc2OTEwL3RleHRyZWdpb246NGRhOTgyM2Q2ZGY5NDdiZWFjNDA5NWFkMzQzZGQyNTdfMTU_7f39a3c8-9ac0-492f-a7a1-e1a9833343bb">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityAddressPostalZipCode" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV82LTAtMS0xLTc2OTEw_10199175-aa13-4d54-8da8-f119b7712c96">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:CityAreaCode" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV84LTAtMS0xLTc2OTEwL3RleHRyZWdpb246NTA1M2YxMGNhY2FmNGNjZjg3MzRkZTMwZDRiOGQ3ZjlfNTg_5a4c834f-0298-4b96-a0a8-3ca76b434434">(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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:LocalPhoneNumber" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV84LTAtMS0xLTc2OTEwL3RleHRyZWdpb246NTA1M2YxMGNhY2FmNGNjZjg3MzRkZTMwZDRiOGQ3ZjlfNjE_68af6cad-df4c-4d5b-b161-13f9c179ddb2">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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:Security12bTitle" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NGQxN2VkODBhY2MxNDA2NWI2YTE3NzFlZmY0N2NjMmEvdGFibGVyYW5nZTo0ZDE3ZWQ4MGFjYzE0MDY1YjZhMTc3MWVmZjQ3Y2MyYV8xLTAtMS0xLTc2OTEw_f8a36469-56b2-4d00-a007-fde9ec50aebb">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:TradingSymbol" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NGQxN2VkODBhY2MxNDA2NWI2YTE3NzFlZmY0N2NjMmEvdGFibGVyYW5nZTo0ZDE3ZWQ4MGFjYzE0MDY1YjZhMTc3MWVmZjQ3Y2MyYV8xLTEtMS0xLTc2OTEw_ba8749e9-acc8-49b9-ae74-6d95653df0b3">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NGQxN2VkODBhY2MxNDA2NWI2YTE3NzFlZmY0N2NjMmEvdGFibGVyYW5nZTo0ZDE3ZWQ4MGFjYzE0MDY1YjZhMTc3MWVmZjQ3Y2MyYV8xLTItMS0xLTc2OTEw_8dd1d037-f91a-4e05-84d4-9cf45fabbcba">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityCurrentReportingStatus" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODQ4_cb9bc37a-01f2-448f-b849-658f009c5810">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityInteractiveDataCurrent" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODQ5_c0310891-5c66-4f12-a6f5-643969ea3477">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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MjEyMGZlNmEwMTY4NDE4ZWJlNzY3ZWZiY2E3YjI2MDUvdGFibGVyYW5nZToyMTIwZmU2YTAxNjg0MThlYmU3NjdlZmJjYTdiMjYwNV8xLTAtMS0xLTc2OTEw_9544b347-33d1-4ff9-bba7-26d7bc57e3d8">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntitySmallBusiness" format="ixt:fixed-true" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MjEyMGZlNmEwMTY4NDE4ZWJlNzY3ZWZiY2E3YjI2MDUvdGFibGVyYW5nZToyMTIwZmU2YTAxNjg0MThlYmU3NjdlZmJjYTdiMjYwNV8xLTMtMS0xLTc2OTEw_a98f0749-5054-4fa2-98da-34e670fad0d9">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityEmergingGrowthCompany" format="ixt:fixed-false" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MjEyMGZlNmEwMTY4NDE4ZWJlNzY3ZWZiY2E3YjI2MDUvdGFibGVyYW5nZToyMTIwZmU2YTAxNjg0MThlYmU3NjdlZmJjYTdiMjYwNV8yLTMtMS0xLTc2OTEw_0c995ae7-dc53-4ead-a137-5e9463b7d691">&#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%">&#9744;</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%"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="dei:EntityShellCompany" format="ixt:fixed-false" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODUw_e8322883-94a6-40a0-b7da-22b9842d6fd6">&#9745;</ix:nonNumeric></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 November&#160;7, 2022 was <ix:nonFraction unitRef="shares" contextRef="i11265eef4aad46d794d22dea392c6203_I20221107" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODQ2_a96b90f6-f8e9-4f3a-b2f3-c409f9a6655c">9,577,026</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="i3e35699d61d94f84beb74724f5f81a53_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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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%">a.</span></td><td colspan="3" style="background-color:#ffffff;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 September&#160;30, 2022 (Unaudited) and December&#160;31, 2021 </span></div></td><td colspan="3" style="background-color:#ffffff;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="#i3e35699d61d94f84beb74724f5f81a53_16">4</a></span></div></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 and nine months ended September&#160;30, 2022 and 2021 (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="#i3e35699d61d94f84beb74724f5f81a53_19">6</a></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></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%">c.</span></td><td colspan="3" style="background-color:#ffffff;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 and nine months ended September&#160;30, 2022 and 2021 (Unaudited)</span></div></td><td colspan="3" style="background-color:#ffffff;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="#i3e35699d61d94f84beb74724f5f81a53_22">7</a></span></div></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 Cash Flows for the three and nine months ended September&#160;30, 2022 and 2021 (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="#i3e35699d61d94f84beb74724f5f81a53_28">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%">e.</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%">Notes to the Condensed Consolidated Financial Statements (Unaudited)</span></td><td colspan="3" style="background-color:#ffffff;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="#i3e35699d61d94f84beb74724f5f81a53_40">11</a></span></div></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="#i3e35699d61d94f84beb74724f5f81a53_79">32</a></span></div></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:400;line-height:100%">ITEM 3.</span></td><td colspan="6" 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%">QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</span></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:#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="#i3e35699d61d94f84beb74724f5f81a53_124">44</a></span></div></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="#i3e35699d61d94f84beb74724f5f81a53_127">44</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></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><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: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:#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:700;line-height:100%">PART II - OTHER INFORMATION</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></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%">&#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%">&#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%">&#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="#i3e35699d61d94f84beb74724f5f81a53_133">45</a></span></div></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:400;line-height:100%">ITEM 1A.</span></td><td colspan="6" 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%">RISK FACTORS</span></td><td colspan="3" style="background-color:#ffffff;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="#i3e35699d61d94f84beb74724f5f81a53_136">45</a></span></div></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="#i3e35699d61d94f84beb74724f5f81a53_139">45</a></span></div></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:400;line-height:100%">ITEM 3.</span></td><td colspan="6" 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%">DEFAULTS UPON SENIOR SECURITIES</span></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:#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="#i3e35699d61d94f84beb74724f5f81a53_142">45</a></span></div></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="#i3e35699d61d94f84beb74724f5f81a53_145">45</a></span></div></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:400;line-height:100%">ITEM 5.</span></td><td colspan="6" 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%">OTHER INFORMATION</span></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:#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="#i3e35699d61d94f84beb74724f5f81a53_148">45</a></span></div></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="#i3e35699d61d94f84beb74724f5f81a53_151">46</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="6" 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%">SIGNATURES</span></td><td colspan="3" style="background-color:#ffffff;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="#i3e35699d61d94f84beb74724f5f81a53_154">48</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="i3e35699d61d94f84beb74724f5f81a53_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, 2021 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">our need for and ability to obtain additional financing in the near term, on acceptable terms or at all, 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-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">instability in the U.S. and global economies and business interruptions experienced by us, our customers and our suppliers, particularly in light of supply chain issues, and related long-term impacts on travel, trade and business operations, as a result of the coronavirus (&#8220;COVID-19&#8221;) pandemic;</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">the competitiveness and market acceptance of our light-emitting diode (&#8220;LED&#8221;) lighting and control 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 ability to compete effectively against companies with lower prices or cost structures, greater resources, or more rapid development capabilities, and new competitors in our target 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-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 new end markets, including 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-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 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 manage inventory and 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-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, distributors and other channel partners to compete with 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-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 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-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 attract and retain a new chief financial officer;</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 manage the size of our workforce while continuing to attract, develop and retain qualified personnel, and to do so in a timely manner;</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 reliance on a limited number of third-party suppliers and development partners, our ability to manage third-party product development and obtain critical components and finished products on acceptable terms and of acceptable quality despite ongoing global supply chain challenges, 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, efficiently and cost-effectively transport products from our third-party suppliers by ocean marine and other logistics channels despite global supply chain and logistics disruptions;</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">the macro-economic conditions, including recessionary trends, in the United States and in other markets in which we operate or secure products, which could affect our ability to obtain raw materials, component parts, freight, energy, labor, and sourced finished goods in a timely and cost-effective 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">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 such as 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 and control technologies and market trends;</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 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="margin-bottom:10pt;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 regain and maintain compliance with the continued listing standards of The Nasdaq Stock Market.</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%">, and EnFocus&#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="i3e35699d61d94f84beb74724f5f81a53_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="i3e35699d61d94f84beb74724f5f81a53_16"></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: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="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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%">September 30,<br/>2022</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/>2021</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNC0xLTEtMS03NjkxMA_99763482-f15f-4b13-8a77-b544be4f95ea">41</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNC0zLTEtMS03NjkxMA_db14ff2d-a210-43f1-b7ec-3bf271c2a996">2,682</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjc2ZWUyN2E3MzI1MTQ0YmU4OTYxMzYxOTg5MDdkYzU4XzUw_f53bc29b-0e8b-428a-b3b6-860dca76ac40">11</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjc2ZWUyN2E3MzI1MTQ0YmU4OTYxMzYxOTg5MDdkYzU4XzU3_930bf802-78ba-46af-8eba-b6a3155df2ea">14</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNS0xLTEtMS03NjkxMA_fb2652c3-f38c-4a32-a23d-ed33ad7ba8d5">1,007</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNS0zLTEtMS03NjkxMA_6e4e3e3b-2872-485e-b5fc-16f1c3c4483e">1,240</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNi0xLTEtMS03NjkxMA_e102b230-4ac1-46c1-9c2c-6e2f88276e35">6,156</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNi0zLTEtMS03NjkxMA_dc6723b4-ea75-478a-b8a0-a10c1911dc08">7,866</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:DepositsAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNy0xLTEtMS03NjkxMA_2ad93ae1-6da5-4191-8f58-3b4703c753fd">610</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:DepositsAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNy0zLTEtMS03NjkxMA_9e71cd07-c610-493a-aa16-627dc23db3fd">712</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfOC0xLTEtMS03NjkxMA_39b4b885-089f-4e62-b068-d75506d3b9b4">788</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfOC0zLTEtMS03NjkxMA_c92ad487-b987-4f23-b152-b6c395056712">924</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTAtMS0xLTEtNzY5MTA_0db083ca-acf2-46e6-8ae5-b0b7a2354470">8,602</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTAtMy0xLTEtNzY5MTA_6185527d-a01d-4a51-a4c2-993a732a1ab4">13,424</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTItMS0xLTEtNzY5MTA_9790f9ea-ef3c-43c3-b86f-fa8805cebf20">433</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTItMy0xLTEtNzY5MTA_b8f680e7-0891-48d0-aea5-2fa951e99c8c">675</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTQtMS0xLTEtNzY5MTA_3c3491b5-a196-4689-850e-233a0c2d6738">1,248</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTQtMy0xLTEtNzY5MTA_9b62f43c-b039-433c-8af2-981c8f24910e">292</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="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 assets</span></td><td style="background-color:#ffffff;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:#ffffff;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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTktMS0xLTEtNzY5MTA_8e2487ac-f034-4c53-a176-bf40ca6ccf6e">10,283</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 style="background-color:#ffffff;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:#ffffff;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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTktMy0xLTEtNzY5MTA_45863f2e-6f83-463b-bd9f-6673df5cd660">14,391</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;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;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:#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%">&#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:700;line-height:100%">&#160;</span></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%">Current 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: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;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:#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%">Accounts payable</span></td><td style="background-color:#ffffff;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:#ffffff;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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjMtMS0xLTEtNzY5MTA_ee0fea8f-e626-4c49-862d-dfdec26e1cb7">1,886</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 style="background-color:#ffffff;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:#ffffff;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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjMtMy0xLTEtNzY5MTA_de4afcb9-4125-42ec-96cb-dd4e5aa9e3f8">2,235</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 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjQtMS0xLTEtNzY5MTA_6846977f-22ad-4b2a-b78b-6426dde5bc37">82</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjQtMy0xLTEtNzY5MTA_27ff4581-592e-466c-8e34-d3e1e061c222">265</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 legal and professional fees</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:AccruedProfessionalFeesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjUtMS0xLTEtNzY5MTA_72403667-58ab-421a-8ebe-28e3ae67703e">66</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:AccruedProfessionalFeesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjUtMy0xLTEtNzY5MTA_18a81855-7140-44d4-a38c-472616bf34e4">104</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 payroll and related benefits</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjYtMS0xLTEtNzY5MTA_33f916b1-6ac2-4b1f-ae37-407a20495829">380</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjYtMy0xLTEtNzY5MTA_d8d851f7-0569-4773-b396-ba51346a1732">718</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 sales commissions</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:AccruedSalesCommissionCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjctMS0xLTEtNzY5MTA_43b64f6b-07a5-40d0-882a-22f280d127c9">60</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:AccruedSalesCommissionCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjctMy0xLTEtNzY5MTA_e7f69e73-2c82-4396-8117-ed2e4da2b26e">57</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 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzAtMS0xLTEtNzY5MTA_5c4a40c2-53ae-40aa-b805-d91cb919346d">242</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzAtMy0xLTEtNzY5MTA_aeae9184-d041-4fe2-a214-b3967ce7b068">295</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzEtMS0xLTEtNzY5MTA_fe764526-1167-41e2-9ad6-96ce74b3a433">7</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzEtMy0xLTEtNzY5MTA_c9a5d636-e68a-4978-826f-ec3fa2ffe9e9">268</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzItMS0xLTEtNzY5MTA_6383eee9-6567-4437-917e-fd685883fbc6">189</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzItMy0xLTEtNzY5MTA_6a5a83d5-edff-419c-b566-7d4ef9f4b115">325</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%">Finance 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzQtMS0xLTEtNzY5MTA_2f370593-131f-4dab-af22-31f18b3f709d">&#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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzQtMy0xLTEtNzY5MTA_291e59c4-cd5c-47cd-8222-952d1018d314">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="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:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Notes payable, net of discounts and 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:NotesPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzctMS0xLTEtNzcwNTc_86b526bb-4268-4bbc-89dc-9e9c8f55f8f9">1,521</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:NotesPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzctMy0xLTEtNzcwNjQ_49e6165d-1603-4580-8e18-64e31220edcc">1,719</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="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%">Related party promissory note payable</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:NotesPayableRelatedPartiesClassifiedCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDAtMS0xLTEtODMxMDQ_a858dc95-3f9f-4602-babe-3382bde6d7a7">451</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:NotesPayableRelatedPartiesClassifiedCurrent" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDAtMy0xLTEtODMxMDQ_df1029fe-cfff-409d-b0f9-dc5da23ee0b3">&#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="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: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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LinesOfCreditCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDAtMS0xLTEtNzY5MTA_d3b140b2-d51b-4dbd-8388-9d587133e261">1,976</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:LinesOfCreditCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDAtMy0xLTEtNzY5MTA_0d848199-15d2-4f85-8eb5-119f4e0e7463">2,169</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDEtMS0xLTEtNzY5MTA_c272c208-bb0f-42e9-9f7e-fa6c363dbc24">6,860</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDEtMy0xLTEtNzY5MTA_338d5763-32e5-4464-b2f6-a7af4860885c">8,156</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><br/></span></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><br/></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: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="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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%">September 30,<br/>2022</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/>2021</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 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></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%">Operating 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfNC0xLTEtMS03NjkxMA_bc7f5dbf-3c0f-4122-92a1-293d26b45c05">1,082</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfNC0zLTEtMS03NjkxMA_c8a3d1ec-c481-4a19-be4b-f79f6411b013">26</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="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%">Notes payable, net of current maturities, discounts and 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LongTermNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfOC0xLTEtMS03NjkxMA_2942c7b2-e65b-4b5d-a562-e88e085bb24a">815</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:LongTermNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfOC0zLTEtMS03NjkxMA_12da9d1c-dd66-4d4b-a681-3e59e0d34235">&#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 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfOS0xLTEtMS03NjkxMA_822f9788-7fbf-48a3-8b9c-fd15795eedbe">8,757</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfOS0zLTEtMS03NjkxMA_c96555ee-bf39-42d6-9177-f00bec2d7c63">8,182</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTItMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo4YzRlZTliYjM2MTM0NDY3YTIwMzc5MzhiZGQ0YTFkZl8zMQ_a1187e28-3905-470a-97b7-9f024bc1d81c"><ix:nonFraction unitRef="usdPerShare" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTItMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo4YzRlZTliYjM2MTM0NDY3YTIwMzc5MzhiZGQ0YTFkZl8zMQ_d3ea3d95-2ec7-4dc4-ab96-cfcb7822dc1a">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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTMtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo1MTZmMDdjNDdkZDE0YmM5YTkzMWRiOGE1ZDI4M2MzZF8xNg_69a2c734-a7a7-421b-b4f3-1de9cefd5f2d"><ix:nonFraction unitRef="shares" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTMtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo1MTZmMDdjNDdkZDE0YmM5YTkzMWRiOGE1ZDI4M2MzZF8xNg_c6e9bd8f-a1a1-42ba-9760-ec22f3a9fb99">5,000,000</ix:nonFraction></ix:nonFraction> shares (<ix:nonFraction unitRef="shares" contextRef="i3d38772d0d82451f9709b001f8b523db_I20220930" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTMtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo1MTZmMDdjNDdkZDE0YmM5YTkzMWRiOGE1ZDI4M2MzZF8yNw_21a96024-d878-4d58-9653-99cd0dda9734"><ix:nonFraction unitRef="shares" contextRef="i955e67119eab4fb9a16c2e4056e33b77_I20211231" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTMtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo1MTZmMDdjNDdkZDE0YmM5YTkzMWRiOGE1ZDI4M2MzZF8yNw_527d03d4-e567-47c2-8138-b743ecc8d542">3,300,000</ix:nonFraction></ix:nonFraction> designated as Series A Convertible Preferred Stock) at September&#160;30, 2022 and December&#160;31, 2021 </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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:PreferredStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo2NDExOWNkNGMxNWI0Y2E1OTUzM2E3MDJkN2JkYmI4Zl8yOA_044747d7-f19e-4c28-b5e5-545934630bb2"><ix:nonFraction unitRef="shares" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:PreferredStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo2NDExOWNkNGMxNWI0Y2E1OTUzM2E3MDJkN2JkYmI4Zl8yOA_3ee05c32-ce87-4411-bc03-c9f86fd7847a"><ix:nonFraction unitRef="shares" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo2NDExOWNkNGMxNWI0Y2E1OTUzM2E3MDJkN2JkYmI4Zl8yOA_9cb497fd-ff36-4c2a-ac4b-e80ad4db2699"><ix:nonFraction unitRef="shares" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo2NDExOWNkNGMxNWI0Y2E1OTUzM2E3MDJkN2JkYmI4Zl8yOA_b30f9ec2-2c84-406a-b627-61e144fcad95">876,447</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> at September&#160;30, 2022 and December&#160;31, 2021</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMS0xLTEtNzY5MTA_4270fe3e-242c-431c-8d56-e1cf9f46c9a3">&#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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMy0xLTEtNzY5MTA_c9940578-cc2c-4be4-adb7-6983c3be3b74">&#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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTUtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo4ZTRlNTcyNzM3ZGI0OGZmYTFkNDA4ZjZjODE2OTgzNl8yOA_284b2da0-0737-4492-814e-1cc803add3bb"><ix:nonFraction unitRef="usdPerShare" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTUtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo4ZTRlNTcyNzM3ZGI0OGZmYTFkNDA4ZjZjODE2OTgzNl8yOA_56b8b3d1-d2eb-4779-aeb6-6d05039ec894">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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTYtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjowZTEwNWMwYmQ2Yzc0OGU4YWM2YTk5YmRjOWRlYzU5Nl8xNg_710bc91c-0140-4fae-aa0d-d51b80c4e8f7"><ix:nonFraction unitRef="shares" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTYtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjowZTEwNWMwYmQ2Yzc0OGU4YWM2YTk5YmRjOWRlYzU5Nl8xNg_fc4f45af-b17e-4afe-8c92-e7b9145572c9">50,000,000</ix:nonFraction></ix:nonFraction> shares at September&#160;30, 2022 and December&#160;31, 2021</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjozMTYxMjBmYmRjYzU0MzY0OWJkMzViZjlmOTI1ZDgxMl8yOA_39819a97-4879-4935-abc5-36e96d674e15"><ix:nonFraction unitRef="shares" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjozMTYxMjBmYmRjYzU0MzY0OWJkMzViZjlmOTI1ZDgxMl8yOA_a727f2e4-155c-487f-a086-c473371962aa">9,191,108</ix:nonFraction></ix:nonFraction> at September&#160;30, 2022 and <ix:nonFraction unitRef="shares" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjozMTYxMjBmYmRjYzU0MzY0OWJkMzViZjlmOTI1ZDgxMl80MQ_6a2b2d94-7c71-4cf9-8466-2e562f3b408e"><ix:nonFraction unitRef="shares" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjozMTYxMjBmYmRjYzU0MzY0OWJkMzViZjlmOTI1ZDgxMl80MQ_7ae98625-b61b-4066-9770-9884cda5c6b1">6,368,549</ix:nonFraction></ix:nonFraction> at December&#160;31, 2021</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMS0xLTEtNzY5MTA_3cc6b905-f667-404e-9d77-0312bea8afb0">1</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:CommonStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMy0xLTEtNzY5MTA_22fc5521-62f4-4f1b-8990-a49a80addfd2">&#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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTgtMS0xLTEtNzY5MTA_cca3daa2-6e0c-498b-a487-4582c8411ab6">148,238</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTgtMy0xLTEtNzY5MTA_ef21865e-6b16-43ba-8eb0-d76b2a06bed0">144,953</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTktMS0xLTEtNzY5MTA_3c98b548-5cf0-44f2-bf71-28cbd5fb0cfa">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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTktMy0xLTEtNzY5MTA_01342b16-71fc-4495-9c7c-873fee5f832a">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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjAtMS0xLTEtNzY5MTA_dbbd4ec7-c325-4d63-ab2d-e99cc4be0d7d">146,710</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjAtMy0xLTEtNzY5MTA_a1ee9c06-749d-496c-8d76-ec937ac9dc7c">138,741</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjEtMS0xLTEtNzY5MTA_23f3a706-a97b-4189-839e-065c79f96201">1,526</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjEtMy0xLTEtNzY5MTA_8ff92efc-0fc1-43de-b20d-e425eaca27e6">6,209</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjItMS0xLTEtNzY5MTA_fabe287a-f0c6-4f8d-8594-4f61a11683ca">10,283</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjItMy0xLTEtNzY5MTA_321cbc3b-d9a1-44ad-b027-8d783512fc0b">14,391</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><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 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="i3e35699d61d94f84beb74724f5f81a53_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="text-align:center;text-indent:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.957%"></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.400%"></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: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:9.113%"></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/>September 30,</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:11pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</span></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%">2022</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%">2021</span></td><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%">2022</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%">2021</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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMi0xLTEtMS03NjkxMA_95316e00-a810-4b09-b093-1802e582668d">1,764</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMi0zLTEtMS03NjkxMA_644556ef-02f5-444e-94fd-ddc5ab290b00">2,749</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMi01LTEtMS03NjkxMA_4c7aef76-0064-455c-986b-f908d5a94b5d">5,305</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMi03LTEtMS03NjkxMA_13d92340-4555-4e53-82df-7cd5792109f0">7,460</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: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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMy0xLTEtMS03NjkxMA_95a4a9a5-1b67-475c-8bd9-6f18899306af">1,927</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMy0zLTEtMS03NjkxMA_688ca2f0-4ce6-4d66-8f38-810309df0bf3">2,186</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMy01LTEtMS03NjkxMA_ab4ee247-6138-4861-855b-e8beff3ee610">5,385</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMy03LTEtMS03NjkxMA_7618d331-6239-4069-9be6-2b3505eb56d6">5,951</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:700;line-height:100%">Gross (loss) 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNC0xLTEtMS03NjkxMA_1148342d-d316-4797-a3cf-b48192911d0b">163</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 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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNC0zLTEtMS03NjkxMA_ed7a5aad-157a-4a29-9531-af0c2cd7a764">563</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNC01LTEtMS03NjkxMA_a41e1a31-aac6-472e-8ec1-c74cfdbb2a5b">80</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 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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNC03LTEtMS03NjkxMA_0f68ea5f-2d9c-45e8-91ab-b8a605fde875">1,509</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: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="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: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="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 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNy0xLTEtMS03NjkxMA_ee515f94-0114-492c-931c-2148065bac81">366</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNy0zLTEtMS03NjkxMA_0a66f8f8-d872-415b-89cf-a6e2f8e7a33a">404</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNy01LTEtMS03NjkxMA_16af7311-f729-4a0f-a760-f79e50f64847">1,222</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNy03LTEtMS03NjkxMA_7434bd04-e13d-438f-84bb-f71c49141330">1,427</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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOC0xLTEtMS03NjkxMA_4e6ec655-e638-48d8-91ed-c9937dc2e8ed">1,802</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOC0zLTEtMS03NjkxMA_50fb3f3d-c53d-43b7-a577-e30203b760eb">1,968</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOC01LTEtMS03NjkxMA_10df3c0e-b73b-419d-bcbd-ddf2b47adb84">5,893</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOC03LTEtMS03NjkxMA_8f7a468e-da4c-4a8d-b7d8-52007b1bd4ca">6,454</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:11pt;font-weight:400;line-height:100%">Loss on write-off of fixed 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:GainLossOnDispositionOfAssets1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS0xLTEtMS04MjE4OQ_cc062e09-49a8-42c0-94a3-8705aa745da7">76</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:GainLossOnDispositionOfAssets1" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS0zLTEtMS04MjE4OQ_55a4d9bb-54bd-4451-bb36-4dc3f5391308">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:GainLossOnDispositionOfAssets1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS01LTEtMS04MjE4OQ_975a4c54-27c1-4d50-973c-0172a6631dd5">76</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:GainLossOnDispositionOfAssets1" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS03LTEtMS04MjE4OQ_f8d496a5-51b1-4b51-8404-9595c9087836">&#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:11pt;font-weight:400;line-height:100%">Restructuring expense (recovery)</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:RestructuringCosts" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS0xLTEtMS03NjkxMA_6e5b9211-c064-422d-96b6-76edb81a8336">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:RestructuringCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS0zLTEtMS03NjkxMA_2a205d1d-6bdb-4d73-9607-80c4889f81da">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:RestructuringCosts" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS01LTEtMS03NjkxMA_1019717f-aa14-4f45-baa0-6165ae43e474">&#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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:RestructuringCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS03LTEtMS03NjkxMA_c940c9dd-becd-40ac-9fcb-5ca79a14f22b">21</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 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:#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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTAtMS0xLTEtNzY5MTA_3bed0f15-6089-498a-aaa0-f94d2845d97d">2,244</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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTAtMy0xLTEtNzY5MTA_4699d2f2-82cf-44b2-9e15-75025f836207">2,373</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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTAtNS0xLTEtNzY5MTA_ac6fc333-c7b6-4a7e-a75d-ef0a9a3e7ec5">7,191</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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTAtNy0xLTEtNzY5MTA_b7dc5e50-ddca-47b2-9c12-0dfad0f54941">7,860</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><td colspan="3" style="background-color:#cceeff;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:#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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTEtMS0xLTEtNzY5MTA_90c6ba25-7392-4fa4-adff-24fc5ce6d472">2,407</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTEtMy0xLTEtNzY5MTA_e07beca0-a8f6-45ed-9421-86cf9181516c">1,810</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTEtNS0xLTEtNzY5MTA_f7ed1739-353d-48c4-8025-f18bea86d500">7,271</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTEtNy0xLTEtNzY5MTA_cdb8505a-c388-4018-aefa-5ecac8b09611">6,351</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></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="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: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:#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="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 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:#ffffff;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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTQtMS0xLTEtNzY5MTA_95f4a4cc-7fee-4cb1-863e-b7a664986086">235</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTQtMy0xLTEtNzY5MTA_20bae324-352d-42bc-bf4a-8a63a24439fe">177</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTQtNS0xLTEtNzY5MTA_6d4d5c17-1584-4a2d-aa9d-8dc0e969b305">679</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTQtNy0xLTEtNzY5MTA_18f49f5e-a9a7-4b80-a66c-f27b5eef0041">520</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%">Gain on forgiveness of Paycheck Protection Program loan</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTUtMS0xLTEtNzY5MTA_dda51cd6-3f1b-4a63-98ab-b25b8f6ca69a">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTUtMy0xLTEtNzY5MTA_d3a95718-7cb2-47a0-9494-6b0033e4efb1">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTUtNS0xLTEtNzY5MTA_d8e28eee-0aeb-4229-b713-82ccab6477c6">&#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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTUtNy0xLTEtNzY5MTA_26a66047-36e0-4724-8d12-f0d2b3342f0e">801</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><td colspan="3" style="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 income</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:OtherNonoperatingIncome" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTctMS0xLTEtNzY5MTA_f56c1b8c-d6ab-49a1-992d-ceae9b491927">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:OtherNonoperatingIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTctMy0xLTEtNzY5MTA_74c5adf1-14d6-4eee-bd18-b5f20fea1703">862</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:OtherNonoperatingIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTctNS0xLTEtNzY5MTA_b0a33be3-39f6-4cc6-a423-a8edd3d776b2">30</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:OtherNonoperatingIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTctNy0xLTEtNzY5MTA_ca26397b-c873-476e-9b42-7244af5e67d6">862</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><td colspan="3" style="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%">Other expenses</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:OtherNonoperatingExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTktMS0xLTEtNzY5MTA_764b23f8-d81e-48c2-9622-783e550e0781">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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:OtherNonoperatingExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTktMy0xLTEtNzY5MTA_3e850c29-a7d1-4b98-b17b-7cac7ce55438">15</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:OtherNonoperatingExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTktNS0xLTEtNzY5MTA_07b6b842-5586-44d6-90e7-37476641a39f">49</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:OtherNonoperatingExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTktNy0xLTEtNzY5MTA_fa373e8b-d70a-466c-ad2d-d323eeced88a">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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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 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:#ffffff;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:#ffffff;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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjMtMS0xLTEtNzY5MTA_e0a764f6-22f2-45c9-ba30-313bd3a2e103">2,662</ix:nonFraction>)</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 style="background-color:#ffffff;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:#ffffff;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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjMtMy0xLTEtNzY5MTA_de13d415-4dbe-4142-8c38-82089fe4568b">1,140</ix:nonFraction>)</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 style="background-color:#ffffff;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:#ffffff;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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjMtNS0xLTEtNzY5MTA_c3ff102c-41a8-4e09-b00e-44ec8e5a5353">7,969</ix:nonFraction>)</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 style="background-color:#ffffff;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:#ffffff;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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjMtNy0xLTEtNzY5MTA_563860e9-ff54-4e96-8759-c51ecb6be37b">5,255</ix:nonFraction>)</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: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="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></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%">Net loss per common share - basic and diluted</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="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 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:#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="usdPerShare" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtMS0xLTEtNzY5MTA_1c7c4ffd-970a-4756-a9ac-047b08344629"><ix:nonFraction unitRef="usdPerShare" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtMS0xLTEtNzY5MTA_b6fab93a-5cd2-47ea-a0da-49d408646f2d">0.29</ix:nonFraction></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 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="usdPerShare" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtMy0xLTEtNzY5MTA_34905d1e-a5a8-4e8e-9add-dd4aafb0cbd8"><ix:nonFraction unitRef="usdPerShare" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtMy0xLTEtNzY5MTA_8a4e3fb1-da00-4907-864b-003aad0168d5">0.22</ix:nonFraction></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 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="usdPerShare" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtNS0xLTEtNzY5MTA_541b5cae-d7f1-412b-8966-3c93261489f9"><ix:nonFraction unitRef="usdPerShare" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtNS0xLTEtNzY5MTA_d15b4f7b-54ed-49c2-bbb0-c2507d5fcace">1.05</ix:nonFraction></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 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="usdPerShare" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtNy0xLTEtNzY5MTA_708ccb65-9209-4673-b4ab-ba3ad52c1a7a"><ix:nonFraction unitRef="usdPerShare" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtNy0xLTEtNzY5MTA_74bfbf53-6e3c-4f27-b521-95b14d1769b9">1.22</ix:nonFraction></ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></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="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: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:#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="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 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:#ffffff;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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktMS0xLTEtNzY5MTA_1e30c635-eb59-4dc0-b587-2622df8b69a3"><ix:nonFraction unitRef="shares" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktMS0xLTEtNzY5MTA_8ec3f064-a864-467f-bb2c-66c2b91b46ac">9,190</ix:nonFraction></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="shares" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktMy0xLTEtNzY5MTA_36227a2a-173a-4735-bf9a-c4cb7b7a92a6"><ix:nonFraction unitRef="shares" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktMy0xLTEtNzY5MTA_3fa08121-24e8-4e40-bd64-dbbc000eddf4">5,086</ix:nonFraction></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="shares" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktNS0xLTEtNzY5MTA_68406b6e-7f15-43a9-94e5-409226f0150b"><ix:nonFraction unitRef="shares" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktNS0xLTEtNzY5MTA_9c8565bc-2f3d-4dfb-962f-a0c29935d887">7,608</ix:nonFraction></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="shares" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktNy0xLTEtNzY5MTA_4223ca7a-7214-4fef-93d9-5167f9a45b26"><ix:nonFraction unitRef="shares" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktNy0xLTEtNzY5MTA_73823a69-59e2-4cdc-8aa3-f77535a24419">4,309</ix:nonFraction></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></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="i3e35699d61d94f84beb74724f5f81a53_22"></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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 2021</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="i7987942e09e2471ba2865ed8c06221f0_I20211231" decimals="-3" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0yLTEtMS03NjkxMA_3e8d22c1-65d3-4b50-bdb4-3a44abd8b5ec">876</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="i7987942e09e2471ba2865ed8c06221f0_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy00LTEtMS03NjkxMA_e13cdfc6-9d57-449d-b611-154f77b38562">&#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="i72e0031688394ae5a40114993adad6a7_I20211231" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy02LTEtMS03NjkxMA_a6d483f7-2dc8-49ba-89f1-e57abd03c32c">6,368</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="i72e0031688394ae5a40114993adad6a7_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy04LTEtMS03NjkxMA_0d336f03-119c-4074-970e-f224cac3b6c4">&#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="i45acacd8e3644f8e9ed598ea4ea01d04_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0xNC0xLTEtNzY5MTA_723aa9f4-991b-49b8-bade-a2119fbb5366">144,953</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="i3ad53c06ea0c4f26a6658e9579659547_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0xNi0xLTEtNzY5MTA_2194c2f2-dd1b-450e-8882-8218a4633e28">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="i8fa2c8c1cb0e4075b272d7cf5ab91a6b_I20211231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0xOC0xLTEtNzY5MTA_6ed81d8b-058a-4050-8e0a-6039b52bcbbf">138,741</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0yMC0xLTEtNzY5MTA_23981101-6129-4529-9efe-7f0a263ba6fc">6,209</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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 upon the exercise of 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%"><ix:nonFraction unitRef="shares" contextRef="i2f420c0ba76a4b158cc9e9783809ad32_D20220101-20220331" decimals="-3" name="efoi:StockIssuedDuringThePeriodSharesWarrantsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfNi02LTEtMS03NjkxMA_2db4f161-09b7-4791-9ec9-581b46efdd63">85</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%">&#8212;&#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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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:#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="i328f4bb2ed174e6ea382ce91e1950744_D20220101-20220331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTEtMTQtMS0xLTc2OTEw_beaf7f0b-98a6-4306-977a-5d81da4916af">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="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="ic42811ba035e48908dd8c1fba25ebace_D20220101-20220331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTEtMjAtMS0xLTc2OTEw_e984c88e-a32f-4963-9f2f-0ab23ff3f625">44</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, 2022</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="i36d609f995bd456d8c811559e575f5a2_D20220101-20220331" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTItMTgtMS0xLTc2OTEw_93965a6a-2aa5-4085-8a7b-f3cdbe724ed1">2,821</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="ic42811ba035e48908dd8c1fba25ebace_D20220101-20220331" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTItMjAtMS0xLTc2OTEw_6f8b8ab8-de51-47c3-88f1-7135e823cda7">2,821</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, 2022</span></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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia002702261534e99a86b51805aa35694_I20220331" decimals="-3" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMi0xLTEtNzY5MTA_c19b0d17-f707-461b-81d1-0d7c7f8c8f48">876</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 #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-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="ia002702261534e99a86b51805aa35694_I20220331" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtNC0xLTEtNzY5MTA_7e66ef5b-7560-4309-9080-5ad3766017f3">&#8212;</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 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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i16c1aa523b6d44b38703ff85f1de1a85_I20220331" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtNi0xLTEtNzY5MTA_910223bc-d7d8-497d-bc1b-fb74a595822f">6,453</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 #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-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="i16c1aa523b6d44b38703ff85f1de1a85_I20220331" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtOC0xLTEtNzY5MTA_69cf4b05-f4eb-419b-80d4-6c22fdccb640">&#8212;</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 colspan="3" style="display: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 #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-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="ib4bc8cffa3b540cfa510dca926048535_I20220331" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMTQtMS0xLTc2OTEw_8978e7f1-5637-4e97-9a61-e5d773193348">144,997</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 #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-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="i1f6ce61750d94268a9797ab11937a018_I20220331" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMTYtMS0xLTc2OTEw_6c91de67-e611-4024-a847-20806e3ce294">3</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 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:8pt;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:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i41317a18bbe7441eba3cd26f18efe456_I20220331" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMTgtMS0xLTc2OTEw_ac79ae15-4f02-4abc-9d0a-86e5660d38b4">141,562</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 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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i80309221754f4f1fbd7ebe9b2bd1fd4c_I20220331" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMjAtMS0xLTc2OTEw_bbeaef80-697d-431b-878c-1c53b375abc9">3,432</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 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;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i27f43545072145d8b67c44614d856844_D20220401-20220630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTQtNi0xLTEtNzY5MTA_45a2e443-c4f6-4409-a298-74a3fe0aa974">45</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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="display:none"></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;border-top: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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTQtMTQtMS0xLTc2OTEw_78d6cc7f-6c77-4de7-8a0b-ce642e68e344">5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTQtMjAtMS0xLTc2OTEw_7f5fb011-a642-4a7c-8971-78eceac15ba0">5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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="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="i27f43545072145d8b67c44614d856844_D20220401-20220630" decimals="-3" name="efoi:StockIssuedDuringThePeriodSharesWarrantsExercised" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTYtNi0xLTEtNzY5MTA_46694706-8f05-4112-84c8-4bf0bfe6956a">1,313</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%"><ix:nonFraction unitRef="usd" contextRef="i27f43545072145d8b67c44614d856844_D20220401-20220630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTYtOC0xLTEtNzY5MTA_357332e4-6e64-48e1-8e13-c82e90c28954">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="3" style="display:none"></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="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTYtMTQtMS0xLTc2OTEw_99cfd13a-2a94-49a4-b0d1-97fb4a788fe0">3,499</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="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTYtMjAtMS0xLTc2OTEw_b10844fb-d0c7-4c8b-b7e5-ce0ef4a5dca8">3,500</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="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="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTgtMTQtMS0xLTc2OTEw_c8b63bfe-a540-43de-9bf3-7c6db851d381">334</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="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTgtMjAtMS0xLTc2OTEw_540e4b68-3191-4377-8745-f599e915266c">334</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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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="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="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMjQtMTQtMS0xLTc2OTEw_6df364ce-84f6-4804-83ee-df4213a5c48b">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: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="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMjQtMjAtMS0xLTc2OTEw_3f605d49-7953-4a27-9b7f-84b0413c7ccb">54</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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 June 30, 2022</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="i26993206f60147df9c3afee6f7e56990_D20220401-20220630" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzAtMTgtMS0xLTc2OTEw_59ec398e-451d-42fd-970e-dd5bd449c35e">2,486</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="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzAtMjAtMS0xLTc2OTEw_07adea90-1627-4732-bca4-08ad0fc17dae">2,486</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 June 30, 2022</span></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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib27fac473a954075a698cab0d8c7a4b0_I20220630" decimals="-3" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMi0xLTEtNzY5MTA_f29938ca-ffd4-4247-9faa-ccfaf3e32086">876</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 #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-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="ib27fac473a954075a698cab0d8c7a4b0_I20220630" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtNC0xLTEtNzY5MTA_ebdceec1-19a0-427f-bb14-aaaa5bfa82e5">&#8212;</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 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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icf5e7ab6b92f42ccafe6eacbe095e3d5_I20220630" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtNi0xLTEtNzY5MTA_28f05bc7-ce7f-4d52-9d2f-92ad4d605f28">7,811</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 #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-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="icf5e7ab6b92f42ccafe6eacbe095e3d5_I20220630" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtOC0xLTEtNzY5MTA_90a755d7-7743-43d3-b3d6-f731d1cbf3cf">1</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 colspan="3" style="display: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 #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-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="ie83b6cce937a4ea5b744c29249335c2a_I20220630" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMTQtMS0xLTc2OTEw_760be04b-89de-4cb5-9466-a9ac41956051">148,221</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 #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-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="i151a406e716441da886a4ff8caabb71e_I20220630" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMTYtMS0xLTc2OTEw_e7717cc9-36c7-4da9-a46e-538859e4c848">3</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 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:8pt;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:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia7ff53291113483ba29d1d932d8513aa_I20220630" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMTgtMS0xLTc2OTEw_db6fa146-d9b9-4f62-a1cb-3e5ad76ed051">144,048</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 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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i682c94a884c54808853513b639aaddba_I20220630" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMjAtMS0xLTc2OTEw_cda63207-0b52-4166-a1f5-0284e5c59cf8">4,171</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 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;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="icc215aa7d53b4bc48a392c6a41f72521_D20220701-20220930" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzItNi0xLTEtNzY5MTA_557a597d-971b-4d9e-a687-1c961c4fd250">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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="display:none"></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;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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="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="icc215aa7d53b4bc48a392c6a41f72521_D20220701-20220930" decimals="-3" name="efoi:StockIssuedDuringThePeriodSharesWarrantsExercised" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzQtNi0xLTEtODIyNDU_339dc1a9-769d-4163-9405-adad90c099e6">1,379</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%">&#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></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%">Stock-based compensation</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="i5c3eab43eaee4a109a5db8730847787f_D20220701-20220930" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzYtMTQtMS0xLTc2OTEw_44e1f4f4-7819-43cc-83ab-f82c94da17c5">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: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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzYtMjAtMS0xLTc2OTEw_446e4a19-8584-4781-9f4a-cdeac6a5ea4c">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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">Net loss for the three months ended September 30, 2022</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%">&#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="ie1eda9d3bbbd441993d7ab74ea4b0f71_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzgtMTgtMS0xLTc2OTEw_9ace4b8f-c6fa-437f-bcbc-58d454b19607">2,662</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%">(<ix:nonFraction unitRef="usd" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzgtMjAtMS0xLTc2OTEw_6b640c91-61bd-4c62-ad13-345869582d06">2,662</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:8pt;font-weight:700;line-height:100%">Balance at September 30, 2022</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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i54814654e2da4cd18301f0c1fcd4ebf3_I20220930" decimals="-3" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMi0xLTEtNzY5MTA_64a3f904-4f3b-4a92-bfa1-4a00eac5b52a">876</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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i54814654e2da4cd18301f0c1fcd4ebf3_I20220930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktNC0xLTEtNzY5MTA_416bbb83-2e0c-4e53-b3c0-b658dcb9a489">&#8212;</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="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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if9335ddc4af449ddbe8158ac552d0a1e_I20220930" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktNi0xLTEtNzY5MTA_5bd2e8db-9472-4f43-918e-b0c012012316">9,191</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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if9335ddc4af449ddbe8158ac552d0a1e_I20220930" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktOC0xLTEtNzY5MTA_2495c8e6-65db-4384-a353-d62564c116c2">1</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="display: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:#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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i680fcb3afcbe42a9ac1a36186c12588a_I20220930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMTQtMS0xLTc2OTEw_b12699da-bde5-4569-81a3-a2b97bf03263">148,238</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 #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:#ffffff;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="i7a9e0e9059fb4fe3b9ee14d9782d254d_I20220930" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMTYtMS0xLTc2OTEw_8255c723-eb88-4f5a-afe4-02e86a45f4f0">3</ix:nonFraction>)</span></td><td style="background-color:#ffffff;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:#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:8pt;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:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i87ee04552afd4559b4e08cd2646c428c_I20220930" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMTgtMS0xLTc2OTEw_4fe815f2-4b77-417f-ae68-5e01ca27a2db">146,710</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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMjAtMS0xLTc2OTEw_efa3da16-55dd-459c-98b8-99097ef337fa">1,526</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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-top:9pt;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%">7</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="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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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="id2a97eb146344d1f80c8b08ffc710bfe_I20201231" decimals="-3" name="us-gaap:SharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0yLTEtMS03NjkxMA_bd94f6cf-b8b1-4260-8ee0-e4b4c7046ed3">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="id2a97eb146344d1f80c8b08ffc710bfe_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy00LTEtMS03NjkxMA_76c7e673-e7b8-46cd-af06-0d650c16bc77">&#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="i7c1032415f4d4c3788fe4265579e52c3_I20201231" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy02LTEtMS03NjkxMA_8f505de1-2c1e-4f7e-ab58-5b6f60eccd4e">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="i7c1032415f4d4c3788fe4265579e52c3_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy04LTEtMS03NjkxMA_283eb3bb-3cb9-462d-af2a-619d11ea8ee5">&#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="i470facc83bc144549bda99f38a36a4c3_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0xNC0xLTEtNzY5MTA_95472926-ffa4-4855-b5d2-5de49beeff46">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="i213d4b0a10204929b6931781d2291628_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0xNi0xLTEtNzY5MTA_07166f91-263f-466c-b85d-a8b34cb3ff1f">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="i5acde0ce46da4dcfaecef72e955e0963_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0xOC0xLTEtNzY5MTA_420e9cd0-3e5d-4bee-9179-b43086c63bc0">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="i665a74c29f70404086fd8174e737d9ae_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0yMC0xLTEtNzY5MTA_5a958705-2a6b-4cb5-8917-51d7618a6cbd">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="i2e5cb75f952146cfafd3f50cee3d0f62_D20210101-20210331" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfNS02LTEtMS03NjkxMA_812a8d9d-cd28-4ee0-a6d8-5d3a9a036aeb">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%">&#8212;&#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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">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="i2e5cb75f952146cfafd3f50cee3d0f62_D20210101-20210331" decimals="-3" name="efoi:StockIssuedDuringThePeriodSharesWarrantsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfOC02LTEtMS03NjkxMA_67fca215-d365-4388-b140-c523960893b0">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="i86764f26015b4a8b83676c1940ed78e4_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfOC0xNC0xLTEtNzY5MTA_74e0d580-53c2-4017-b177-f3079f1550bf">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="i26bb66f827304d46a3935f73d2dc6dfd_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfOC0yMC0xLTEtNzY5MTA_54d9fc81-ca33-43b7-a3ab-672db57e5860">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="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%">&#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="i86764f26015b4a8b83676c1940ed78e4_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTEtMTQtMS0xLTc2OTEw_05623241-1773-422f-9097-39ee4228c74f">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="i26bb66f827304d46a3935f73d2dc6dfd_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTEtMjAtMS0xLTc2OTEw_6ef25cc3-cb66-4b10-b15a-1004f5c0b4f5">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="i86764f26015b4a8b83676c1940ed78e4_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTItMTQtMS0xLTc2OTEw_0473a9ae-3113-4791-9e27-1e9242c0d400">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="i26bb66f827304d46a3935f73d2dc6dfd_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTItMjAtMS0xLTc2OTEw_6e1257c3-6ddd-418a-a230-7c0b9c9e19a9">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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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, 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="i21d7e292c62e483aba098b2a517bab34_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTUtMTgtMS0xLTc2OTEw_da45322c-26be-4aa0-ae3a-07fc9262fcaf">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="i26bb66f827304d46a3935f73d2dc6dfd_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTUtMjAtMS0xLTc2OTEw_d31cb69c-73ac-406f-9e17-0983b567fa07">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-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="i22a33ab9df0045418c5db95d468e7c75_I20210331" decimals="-3" name="us-gaap:SharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMi0xLTEtNzY5MTA_f1d5ad50-5554-48fc-b8eb-d91e6b461924">2,597</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 #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-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="i22a33ab9df0045418c5db95d468e7c75_I20210331" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtNC0xLTEtNzY5MTA_3e04f145-1655-4513-832e-7607c413cb37">&#8212;</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 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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i585a56b922c640ce89652fbdf6d902a0_I20210331" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtNi0xLTEtNzY5MTA_7d7fd844-fee9-478c-90f2-ff6adc04a5a0">3,682</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 #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-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="i585a56b922c640ce89652fbdf6d902a0_I20210331" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtOC0xLTEtNzY5MTA_ccaa5ff9-501d-410e-8f4a-10a2e833aeff">&#8212;</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 colspan="3" style="display: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 #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-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="if59253d3904443d19142f72b9cfbd593_I20210331" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMTQtMS0xLTc2OTEw_51d0e905-8597-4d8d-a4a9-9d1c659dd8fe">135,778</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 #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-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="i54c20001f98e4b7088878f0e4434111f_I20210331" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMTYtMS0xLTc2OTEw_842df31c-e62c-4616-8f20-7f4eb5ef6d32">3</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 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:8pt;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:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie694b4b7a1f2408b93d96398305e67dc_I20210331" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMTgtMS0xLTc2OTEw_12406ed8-de28-4384-8eda-c993cda7dc63">132,497</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 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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a52ce3f141b427ab0691b45fb7f1ee9_I20210331" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMjAtMS0xLTc2OTEw_9614311f-0700-414c-b70d-2b6da1212a40">3,278</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 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;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6914353c61624cbb8977a9af61eb9588_D20210401-20210630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTctNi0xLTEtNzY5MTA_78fb5024-8b1c-470e-8f5d-41b49cdb384d">69</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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="display:none"></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;border-top: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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTctMTQtMS0xLTc2OTEw_80dbe711-8a12-4a42-82e3-c1e2a9978193">59</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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: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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTctMjAtMS0xLTc2OTEw_d71a117a-cd01-4ffb-993b-c27ca3871491">59</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #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 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</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="i6914353c61624cbb8977a9af61eb9588_D20210401-20210630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTgtNi0xLTEtNzY5MTA_00d2bec2-74e2-469d-87d8-228a3c7b7b77">990</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="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTgtMTQtMS0xLTc2OTEw_b373b232-29ab-4d1d-aa9c-e78b0f5d10e9">5,000</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="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTgtMjAtMS0xLTc2OTEw_3e46427b-cdb5-4825-a3b1-3f17f3a80722">5,000</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</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="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTktMTQtMS0xLTc2OTEw_817e3b8c-81e6-4526-9480-05c64ce95849">469</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="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTktMjAtMS0xLTc2OTEw_7a1a4cbb-e992-4805-81ef-0863c64c2b50">469</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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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:#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 conversion from preferred stock</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%">(<ix:nonFraction unitRef="shares" contextRef="ia7b2dd69ecbb455c812af98f55862fce_D20210401-20210630" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjItMi0xLTEtNzY5MTA_e6cc478b-9611-4382-b377-ab921823feb6">1,721</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%"><ix:nonFraction unitRef="shares" contextRef="i6914353c61624cbb8977a9af61eb9588_D20210401-20210630" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjItNi0xLTEtNzY5MTA_8b7ae18e-0d06-4b89-a28c-27b1fb2c539d">344</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%">&#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></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%">Stock-based compensation</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="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjMtMTQtMS0xLTc2OTEw_e00cc342-af77-4607-b909-93b1b0efe174">208</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="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjMtMjAtMS0xLTc2OTEw_4e40f98c-58ee-4772-a349-e3009a3ff750">208</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%">Net loss for the three months ended June 30, 2021</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%">&#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="i00b0d086d3ab49c8a683d8954cf4fef5_D20210401-20210630" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjUtMTgtMS0xLTc2OTEw_e22692bd-2441-45aa-94d2-0cedd2d5ad92">2,473</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%">(<ix:nonFraction unitRef="usd" contextRef="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjUtMjAtMS0xLTc2OTEw_47b101e6-42fc-4e4a-b034-ce48c3a23b21">2,473</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:8pt;font-weight:700;line-height:100%">Balance at June 30, 2021</span></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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic428e490269a445cbf67999688fa8a64_I20210630" decimals="-3" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMi0xLTEtNzY5MTA_1f523ceb-df93-4cff-b6bc-a67263ccd582">876</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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic428e490269a445cbf67999688fa8a64_I20210630" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtNC0xLTEtNzY5MTA_ceaef658-22c0-4f3c-ba6b-92b793eb37a7">&#8212;</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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i955d48b41786498d99765ea89cb30e42_I20210630" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtNi0xLTEtNzY5MTA_bd584205-e7c0-4c9a-bd1e-dc0c06131161">5,085</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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i955d48b41786498d99765ea89cb30e42_I20210630" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtOC0xLTEtNzY5MTA_49cb2d3d-3bb2-4027-8191-0d7132f53a91">&#8212;</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="3" style="display: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:#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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i83dae07318134e1cba6b3cebed12e101_I20210630" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMTQtMS0xLTc2OTEw_116e5a4c-0c0b-416d-93cc-410170b73008">140,576</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:8pt;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:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i916bec6489234285bc4faba48c47531d_I20210630" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMTYtMS0xLTc2OTEw_f0fe03e9-f631-4cc3-aaeb-1308aa82845f">3</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 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:8pt;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:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iddc2642da66c4728b01d64e14a2f60e1_I20210630" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMTgtMS0xLTc2OTEw_0496346a-241d-4e62-927d-7401ed3299d7">134,970</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 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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5be37111720b4e3db2683efa15ba1627_I20210630" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMjAtMS0xLTc2OTEw_e9b4a91e-ae3c-44fd-8050-eaeea0ef9140">5,603</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 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:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top: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="2" style="background-color:#cceeff;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top: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="2" style="background-color:#cceeff;border-top: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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="iab8b96e992724c5f947eff170136e04b_D20210701-20210930" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjctNi0xLTEtNzY5MTA_a304e5e1-e3a8-481a-9486-6acee474ae49">2</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top: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="2" style="background-color:#cceeff;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top: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="display:none"></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;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top: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="2" style="background-color:#cceeff;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top: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="2" style="background-color:#cceeff;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top: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="2" style="background-color:#cceeff;border-top: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:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #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 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</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="ib0b46a49c3e9483f895f7fb43af1d2ae_D20210701-20210930" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjgtMTQtMS0xLTc3MjEz_3c061202-7989-437a-8506-6da0cc8891b5">1</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjgtMjAtMS0xLTc3MjEz_728d1628-ff2b-492a-a45b-76717a974ed2">1</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%">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units</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="ib0b46a49c3e9483f895f7fb43af1d2ae_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjgtMTQtMS0xLTc2OTEw_e232fadf-babf-4515-a7fe-643e68018809">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: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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjgtMjAtMS0xLTc2OTEw_2f64d34c-4c67-4061-8316-809913cb8868">1</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%">Stock-based compensation</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="ib0b46a49c3e9483f895f7fb43af1d2ae_D20210701-20210930" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjktMTQtMS0xLTc2OTEw_ac4281b6-2488-49a5-a813-e597ee9e8ad3">39</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjktMjAtMS0xLTc2OTEw_4fa79286-1a68-4b88-a699-2580b7094b46">39</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%">Net loss for the three months ended September 30, 2021</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%">&#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="ide7c515d7b5c49778860043e22c26b9e_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzAtMTgtMS0xLTc2OTEw_fbecb316-4bb0-4473-8bde-ce57eaeec1ba">1,140</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%">(<ix:nonFraction unitRef="usd" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzAtMjAtMS0xLTc2OTEw_d3ca9950-ede7-464b-8fce-3a2a07c51aed">1,140</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:8pt;font-weight:700;line-height:100%">Balance at September 30, 2021</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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i37c5bc61bc3847df8ee41d36acdd3f6b_I20210930" decimals="-3" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMi0xLTEtNzY5MTA_ba1d3df5-fdc5-411f-94f5-b1f687120f2e">876</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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37c5bc61bc3847df8ee41d36acdd3f6b_I20210930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtNC0xLTEtNzY5MTA_588f6052-89a3-4243-a5a5-440345a9413c">&#8212;</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="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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i17b7e1a0f0bd4e0895f819e366d44764_I20210930" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtNi0xLTEtNzY5MTA_e4a9e79c-3992-4369-922a-811e7f58b0e6">5,087</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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i17b7e1a0f0bd4e0895f819e366d44764_I20210930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtOC0xLTEtNzY5MTA_382f2180-d7b7-4dcb-b62c-0bf4d4c75cbc">&#8212;</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="display: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:#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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibc54bb183c774a3380ffa16006ed5181_I20210930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMTQtMS0xLTc2OTEw_4cc888b4-f98c-4aef-b209-79b8878ec9d0">140,615</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:8pt;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:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i114dc05fb5c64306936cb8d143be1e55_I20210930" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMTYtMS0xLTc2OTEw_9eb1ea9a-3e55-4c67-966a-3a70d5e44693">3</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:8pt;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:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8f44bbd95f6f46c08323693a8d071dfe_I20210930" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMTgtMS0xLTc2OTEw_31ebb3f3-76e5-4209-80b4-e2325a72682c">136,110</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:8pt;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:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMjAtMS0xLTc2OTEw_9fb60045-cad5-4d8a-8182-cfc3fb766d51">4,502</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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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-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="i3e35699d61d94f84beb74724f5f81a53_28"></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"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.656%"></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:9.110%"></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:9.110%"></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:9.113%"></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/>September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</span></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:9pt;font-weight:700;line-height:100%">2022</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:9pt;font-weight:700;line-height:100%">2021</span></td><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:9pt;font-weight:700;line-height:100%">2022</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:9pt;font-weight:700;line-height:100%">2021</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><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 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="usd" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMy0xLTEtMS03NjkxMA_0280c0cc-9edb-4cf7-b5d8-3bb7f4b1c5b6">2,662</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMy0zLTEtMS03NjkxMA_836a130a-24fc-465c-8a45-208fcd474506">1,140</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMy01LTEtMS03NjkxMA_27e2fd6a-3a16-47fb-81ca-dbecfe27e2a4">7,969</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMy03LTEtMS03NjkxMA_8617e371-d41c-4c0e-9906-a68491928ce7">5,255</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 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><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 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%">Other income</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:OtherNoncashIncome" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNS0xLTEtMS03NjkxMA_a623c2fe-3279-4eda-b7f5-a5c30763a1cc">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:OtherNoncashIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNS0zLTEtMS03NjkxMA_9d1df7c7-1d3a-43f4-a97d-f14bc3182f2a">862</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:OtherNoncashIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNS01LTEtMS03NjkxMA_e51c4aae-6c7a-4c43-b3ce-47f34f5f8616">30</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:OtherNoncashIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNS03LTEtMS03NjkxMA_a50af273-717e-41c7-a7df-598ca0ed9e74">862</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%">Gain on forgiveness of Paycheck Protection Program loan</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNi0xLTEtMS03NjkxMA_9c6ff7d6-2f60-4183-b4ac-d6ae97fdca06">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNi0zLTEtMS03NjkxMA_d58c6015-921e-415d-ade2-e9b5ba6573e8">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNi01LTEtMS03NjkxMA_65406e68-0829-499f-9d5a-163a81cf11c7">&#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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNi03LTEtMS03NjkxMA_b601987a-7f02-468e-aa53-60006fe80f9e">801</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%">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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNy0xLTEtMS03NjkxMA_bd134a6f-a364-4a95-b26f-fb52b0a066c0">42</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNy0zLTEtMS03NjkxMA_c8055b4c-212b-4b50-a178-281f2da7b746">43</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNy01LTEtMS03NjkxMA_cb0b3429-5b39-4bd3-9931-9aa313785bfc">129</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNy03LTEtMS03NjkxMA_4a73e7d8-0bae-4e49-b849-ce5ab7e49b6e">143</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%">Stock-based compensation</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfOC0xLTEtMS03NjkxMA_c72f4d5a-cc75-4ad0-b379-94d9d16c4b68">17</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfOC0zLTEtMS03NjkxMA_46b4db3e-91a3-4f64-8840-e3fad3770147">39</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfOC01LTEtMS03NjkxMA_37b56638-5dd1-4848-830d-c6b384b7073c">115</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfOC03LTEtMS03NjkxMA_9c159e89-1fa0-458d-9cd1-5e3a73a5a119">387</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></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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTAtMS0xLTEtNzY5MTA_1d754a0b-047e-41e9-8e23-81994e5c2528">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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTAtMy0xLTEtNzY5MTA_20fb2d12-508f-466a-8d39-a31d3a8f4fbf">2</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTAtNS0xLTEtNzY5MTA_1a3050ff-8de4-4fd4-8461-225120770649">3</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTAtNy0xLTEtNzY5MTA_bf5175a3-7937-427c-922f-1903163b3e99">10</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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTEtMS0xLTEtNzY5MTA_0b06de08-60ea-4e45-8c5c-6da5138275b3">220</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:InventoryWriteDown" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTEtMy0xLTEtNzY5MTA_27ca3af0-dfd7-49e2-a122-9040f52d3bb8">70</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTEtNS0xLTEtNzY5MTA_64009277-a760-4163-bf4b-f5738de789b5">164</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:InventoryWriteDown" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTEtNy0xLTEtNzY5MTA_d416cb6a-9334-45e7-b36b-9fec78fcefa7">9</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="efoi:IncreaseDecreaseInProvisionForWarranties" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTItMS0xLTEtNzY5MTA_57841882-9d0d-4c98-90cc-479a58483bc0">74</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:IncreaseDecreaseInProvisionForWarranties" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTItMy0xLTEtNzY5MTA_46605749-e7ca-4b80-8b4b-ae307d296c9d">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:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="efoi:IncreaseDecreaseInProvisionForWarranties" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTItNS0xLTEtNzY5MTA_d8e9eddc-0498-4a52-95ee-c7b367785777">53</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:IncreaseDecreaseInProvisionForWarranties" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTItNy0xLTEtNzY5MTA_d3a81ada-7ebc-4906-9495-4f374559684b">13</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></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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:AmortizationOfDebtDiscountPremium" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTQtMS0xLTEtNzY5MTA_8a148da9-2ef6-4ba3-ad9d-b4cf91f5502c">87</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:AmortizationOfDebtDiscountPremium" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTQtMy0xLTEtNzY5MTA_2b035c36-bf61-46dc-aeed-4506c309b188">61</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:AmortizationOfDebtDiscountPremium" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTQtNS0xLTEtNzY5MTA_6bcfc8b0-3213-441a-8cd8-eb470219b7d5">247</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:AmortizationOfDebtDiscountPremium" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTQtNy0xLTEtNzY5MTA_de2f0e36-956c-4ca9-ab79-515ae8103c1d">158</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%">Loss on write-off of property and equipment</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTUtMS0xLTEtNzY5MTA_4432e0cb-440e-4845-ac68-f929be31cc78">76</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTUtMy0xLTEtNzY5MTA_62752815-9939-4322-b1a5-698bee73d20c">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTUtNS0xLTEtNzY5MTA_bc0fff6d-69ad-4978-9a94-d9476b3a969f">76</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTUtNy0xLTEtNzY5MTA_26314446-ec6f-4832-899c-596ed499bdc6">&#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: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:#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="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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTctMS0xLTEtNzY5MTA_c153d7aa-7964-4277-a2ca-720d149c26eb">139</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTctMy0xLTEtNzY5MTA_a4618cde-5ade-46e7-82b4-109e40d66e08">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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTctNS0xLTEtNzY5MTA_b3b3c5a0-4da6-4e0b-ab24-90b3137fbf20">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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTctNy0xLTEtNzY5MTA_e353a1dd-2b47-4ccc-a39c-1d4ce9f7d8c4">390</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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTgtMS0xLTEtNzY5MTA_f7b399d1-c58b-4538-8384-dfb28a528a5a">792</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTgtMy0xLTEtNzY5MTA_28cbf139-9961-4d83-8c60-3536deb9f870">444</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTgtNS0xLTEtNzY5MTA_61fb3023-395a-4f02-b273-9fcb426329c3">1,546</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTgtNy0xLTEtNzY5MTA_a4961c50-55b8-4ab2-95cd-06f990e2bb43">2,105</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%">Short-term deposits</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:IncreaseDecreaseInDepositOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTktMS0xLTEtNzY5MTA_e701ee55-8bab-4d77-94b1-7388b5fc7b3b">110</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:IncreaseDecreaseInDepositOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTktMy0xLTEtNzY5MTA_b4eda2b1-af73-41d6-a3e1-8cfc62e918df">62</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:IncreaseDecreaseInDepositOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTktNS0xLTEtNzY5MTA_3716bef0-8db0-4f09-800e-1fa83a95feda">51</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInDepositOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTktNy0xLTEtNzY5MTA_ee06d9aa-6315-4a53-a9c9-691b0079a9ee">87</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%">Prepaid and other 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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjAtMS0xLTEtNzY5MTA_bd1876fe-1625-4263-bc22-0cfa3bde6cdc">46</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjAtMy0xLTEtNzY5MTA_4b0f9d68-4bdb-40b7-943e-924442d47cdb">91</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjAtNS0xLTEtNzY5MTA_3741d34d-041f-4894-82c6-c41354a7a1a2">162</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjAtNy0xLTEtNzY5MTA_45595f69-61b8-4c45-8c79-ad17b0f7bc61">119</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%">Accounts payable</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjEtMS0xLTEtNzY5MTA_91cf49c0-b813-406f-85b9-c2e7415debf1">629</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjEtMy0xLTEtNzY5MTA_b89ed976-d92e-4a32-a74f-0f7e13136dc7">164</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjEtNS0xLTEtNzY5MTA_ecbfd799-716b-4c0a-9728-2668297e72d9">92</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjEtNy0xLTEtNzY5MTA_6a5d810b-f830-4112-a3b8-26aea1fb45c6">82</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%">Accrued and other 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjItMS0xLTEtNzY5MTA_3a6fdfb0-ae7e-4f78-989c-5624f9495fb7">101</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjItMy0xLTEtNzY5MTA_7ebd433a-16d7-46be-a9d4-688397fd5edd">53</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjItNS0xLTEtNzY5MTA_c0f515d5-9d3a-4a62-84c3-3ab38e1eeace">461</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjItNy0xLTEtNzY5MTA_ddec555a-08ac-4998-bd1c-3003f9255fe8">305</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%">Deferred revenue</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjMtMS0xLTEtNzY5MTA_26404198-f9fb-4309-bb47-c9559c107f95">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="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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjMtMy0xLTEtNzY5MTA_4184c0c0-522b-4057-8bff-e3a612e890ef">69</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjMtNS0xLTEtNzY5MTA_da4c853f-963c-4aeb-ad88-fc39154ee3a1">261</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjMtNy0xLTEtNzY5MTA_343f84f6-4d0e-4887-8f83-b6fd90afad52">70</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 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:#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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjQtMS0xLTEtNzY5MTA_5c33455b-fcce-41fe-86a1-852705e6eb06">1,771</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 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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjQtMy0xLTEtNzY5MTA_bd66ac27-0054-4388-83aa-010e2be7a117">1,175</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjQtNS0xLTEtNzY5MTA_41a21b85-7826-4068-a8d8-e3c2233fe190">1,728</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 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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjQtNy0xLTEtNzY5MTA_4be8a0e8-4173-4b7b-9ced-b2a683ff983e">3,165</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></tr><tr><td colspan="3" style="background-color:#ffffff;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 operating 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjUtMS0xLTEtNzY5MTA_2b22c22f-f272-451d-9bc9-b3685e0c9938">891</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjUtMy0xLTEtNzY5MTA_c6f907cf-6261-4a72-8bc6-aecb05447f6a">2,315</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjUtNS0xLTEtNzY5MTA_7d46c800-abfb-4e93-b573-d3501501fc47">6,241</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjUtNy0xLTEtNzY5MTA_b6dac422-4af7-4095-a9f8-b111a532d7d5">8,420</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><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 investing activities:</span></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: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: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:#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 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%">Acquisitions of property and equipment</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjctMS0xLTEtNzY5MTA_a5f9f403-ae52-458f-92bb-5c6785622d35">9</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjctMy0xLTEtNzY5MTA_eac7462c-e86c-49a5-9a4f-841c6cca965a">100</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjctNS0xLTEtNzY5MTA_f9af6f35-9bf8-4eef-930c-ddabe6406bc6">41</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjctNy0xLTEtNzY5MTA_7d9e3172-74db-4b65-94d6-935d717721f5">311</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><td colspan="3" style="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 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 investing 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjktMS0xLTEtNzY5MTA_0c95346d-81fd-4fea-b11f-562a3a9eb02d">9</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjktMy0xLTEtNzY5MTA_e7096985-011d-40dd-bc62-a94d3557aa4c">100</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjktNS0xLTEtNzY5MTA_9a2003dc-c61a-43a7-9916-7cb2c4908876">41</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjktNy0xLTEtNzY5MTA_0e995500-9917-4416-b329-9c3f12774eeb">311</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></tr></table></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: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="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="text-align:center;text-indent:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.656%"></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:9.110%"></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:9.110%"></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:9.113%"></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/>September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</span></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:9pt;font-weight:700;line-height:100%">2022</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:9pt;font-weight:700;line-height:100%">2021</span></td><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:9pt;font-weight:700;line-height:100%">2022</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:9pt;font-weight:700;line-height:100%">2021</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><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 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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMy0xLTEtMS03NjkxMA_f78019ae-fe66-4741-82d1-067114822888">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMy0zLTEtMS03NjkxMA_27ef1345-a396-499d-9089-1773ce8af372">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMy01LTEtMS03NjkxMA_2f753833-04d2-445c-9802-c14d02b9f142">3,500</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMy03LTEtMS03NjkxMA_9ecfa4e1-9b82-4e07-8869-4345f7e08692">5,000</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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:ProceedsFromWarrantExercises" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNC0xLTEtMS03NjkxMA_f8cbbd88-ba43-4886-9d51-a4d34f0fd57b">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:ProceedsFromWarrantExercises" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNC0zLTEtMS03NjkxMA_4981f813-1a13-4769-a346-64ba3cde623f">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:ProceedsFromWarrantExercises" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNC01LTEtMS03NjkxMA_c93055de-0432-4870-ac0d-81c198cec166">&#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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:ProceedsFromWarrantExercises" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNC03LTEtMS03NjkxMA_9fff75e3-f16d-4211-ad76-cd5ee38586ca">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="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%">Offering costs paid on 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNS0xLTEtMS03NjkxMA_10fe9e8d-0981-4272-8557-1bc2767742af">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNS0zLTEtMS03NjkxMA_db9ac8b9-ceec-45b5-b092-60281ff6602c">1</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNS01LTEtMS03NjkxMA_55496451-c6f6-4898-8e7f-5cb69a06b388">334</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNS03LTEtMS03NjkxMA_26711365-6b4c-4048-9fe2-81b273b90389">470</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><td colspan="3" style="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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNy0xLTEtMS03NjkxMA_6fda7705-6705-44e8-9b86-0f3767565410">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNy0zLTEtMS03NjkxMA_7949c9d0-691d-4f5c-8804-32c80bc866a8">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNy01LTEtMS03NjkxMA_8a2fee25-9395-443f-8395-cf207cbeafa1">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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNy03LTEtMS03NjkxMA_18bbed0e-1581-4972-87c1-5b4fb019efa2">3</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%">Proceeds from exercise of stock options and employee stock purchase plan purchases</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOC0xLTEtMS03NjkxMA_a73ddc77-0878-441d-bc86-e1fec7f1f231">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOC0zLTEtMS03NjkxMA_0c06262a-2ec5-4cb5-b51a-51a90b48af9b">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOC01LTEtMS03NjkxMA_f32443d7-b9ea-4e93-8c6d-324d5f3b28df">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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOC03LTEtMS03NjkxMA_0fb4dc57-6f7c-48bc-a7cf-ebfa385c0dd4">59</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%">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOS0xLTEtMS03NjkxMA_1534c4e5-b17d-4125-b603-54826724de90">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOS0zLTEtMS03NjkxMA_12138f1b-65ca-4371-9d7f-b180a57b99e7">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOS01LTEtMS03NjkxMA_5d67256e-584f-45ef-88b1-a2cfb229456b">&#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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOS03LTEtMS03NjkxMA_e022ea62-1b09-4a22-9d27-92bad0f48706">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><td colspan="3" style="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:400;line-height:100%">Proceeds from the 2021 Streeterville note</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="i18c689fb0f414e3eb031cde5879f5268_D20220701-20220930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTEtMS0xLTEtNzY5MTA_41ecfda2-50d5-413d-9776-84edb20c0896">&#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="i91e93d00b627463cba94c43dd3d1a008_D20210701-20210930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTEtMy0xLTEtNzY5MTA_e8cb4b80-2b2a-4666-b395-e5b073cf9019">&#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="i8a79c33feff848359dd54eec991a97f6_D20220101-20220930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTEtNS0xLTEtNzY5MTA_abae5aec-96c1-444e-86cb-9be4bfda8fe1">&#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="id9521dddca564db0a623980c42c97b0e_D20210101-20210930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTEtNy0xLTEtNzY5MTA_7bfc22e3-9642-4340-be29-f24b09031243">1,515</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%">Payments on the 2021 Streeterville 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="i18c689fb0f414e3eb031cde5879f5268_D20220701-20220930" decimals="-3" name="us-gaap:RepaymentsOfNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTItMS0xLTEtNzY5MTA_a0828f60-2b04-43fc-bca4-4ef20e6a03c8">410</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="i91e93d00b627463cba94c43dd3d1a008_D20210701-20210930" decimals="-3" name="us-gaap:RepaymentsOfNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTItMy0xLTEtNzY5MTA_79934ec1-3ade-4793-854d-c88d711a66c8">&#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="i8a79c33feff848359dd54eec991a97f6_D20220101-20220930" decimals="-3" name="us-gaap:RepaymentsOfNotesPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTItNS0xLTEtNzY5MTA_75c96dec-8fe8-440a-accb-95b61424ca12">1,435</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="id9521dddca564db0a623980c42c97b0e_D20210101-20210930" decimals="-3" name="us-gaap:RepaymentsOfNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTItNy0xLTEtNzY5MTA_1e57b327-284c-4505-baa3-d47f8f120b8c">&#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 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%">Proceeds from the 2022 Streeterville note</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="ic61ce08aeede4ac7beee549cbfb8591a_D20220701-20220930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTMtMS0xLTEtNzY5MTA_c5cb5981-594f-449e-b8d1-50cfdf611b20">&#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="i176368470a454b5aaa77dcbae6ab3f2d_D20210701-20210930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTMtMy0xLTEtNzY5MTA_a85be537-9350-4eef-8c75-c569ff81b030">&#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="ib76b892bcc8a44c098293a01fa41865f_D20220101-20220930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTMtNS0xLTEtNzY5MTA_5f35abe6-e69a-43cf-a9ad-bfb86255d65d">2,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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i75cceb313bf04e6b998e12638d958d7f_D20210101-20210930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTMtNy0xLTEtNzY5MTA_8a9d135f-c8ec-4ce6-ab6e-9badc164867d">&#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><td colspan="3" style="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%">Proceeds from the related party promissory note 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTUtMS0xLTEtODAzNTA_6cd66277-3731-4889-9056-caec883b2644">450</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTUtMy0xLTEtODAzNTA_e9c02f65-a212-4080-9e3e-a3e67ec43784">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTUtNS0xLTEtODAzNTA_1f82fc95-0599-491d-a43b-8741ed65251d">450</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:ProceedsFromNotesPayable" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTUtNy0xLTEtODAzNTA_43a9afb7-19b0-4bf8-8864-e1f2e4b457e2">&#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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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:400;line-height:100%">Deferred financing costs paid</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTYtMS0xLTEtNzY5MTA_1583b7bc-b02d-48eb-b81a-50bee4b2ef80">95</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTYtMy0xLTEtNzY5MTA_4916af25-44ac-4b68-9622-2c15f8a88252">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTYtNS0xLTEtNzY5MTA_89b77317-8cff-41b1-8cc3-f5c1035765ca">329</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTYtNy0xLTEtNzY5MTA_bbecc472-9c4a-404a-9e5a-48f1dbe50507">30</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><td colspan="3" style="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%">Net payments on the 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTgtMS0xLTEtNzY5MTA_ce5191a8-5ac9-44ed-af15-1facd2cca8d1">58</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTgtMy0xLTEtNzY5MTA_ed4ca317-9e63-4b6b-b75e-69c6a9a36279">1,128</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTgtNS0xLTEtNzY5MTA_11d7c665-07f7-44da-bf2c-45400fc5164c">215</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTgtNy0xLTEtNzY5MTA_2707295b-f829-4736-a288-c695537963ee">337</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 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 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTktMS0xLTEtNzY5MTA_211ef17a-dc3c-4c91-aa7c-6e6f10c97e43">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><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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTktMy0xLTEtNzY5MTA_2c27bde0-a623-4bdb-b12e-206ab5a2acf4">1,127</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTktNS0xLTEtNzY5MTA_a0ad200d-dd91-43e3-a2fc-910f35a5c631">3,641</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTktNy0xLTEtNzY5MTA_dfed2192-34ed-422c-87e3-63d0517b4aeb">6,934</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><td colspan="3" style="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 style="height:15pt"><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="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 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 decrease in 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjMtMS0xLTEtNzY5MTA_cd4440d0-65b0-4141-bdce-c429ee37469e">897</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjMtMy0xLTEtNzY5MTA_5930c7aa-def1-4314-99d2-0f95b5a84544">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjMtNS0xLTEtNzY5MTA_8bccbd2e-8e79-4d18-8f16-e3ff5530f4dd">2,641</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjMtNy0xLTEtNzY5MTA_a9536f89-d930-4593-9466-afc985b399c1">1,797</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:400;line-height:100%">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="i682c94a884c54808853513b639aaddba_I20220630" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjQtMS0xLTEtNzY5MTA_0a13e067-a8ed-4d7c-b5ad-45010eedaf6a">938</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="i5be37111720b4e3db2683efa15ba1627_I20210630" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjQtMy0xLTEtNzY5MTA_bf4243ba-746c-4545-a85d-89ca99525007">1,669</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjQtNS0xLTEtNzY5MTA_f1044835-a719-4811-9d51-109de2a571e4">2,682</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="i665a74c29f70404086fd8174e737d9ae_I20201231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjQtNy0xLTEtNzY5MTA_02066917-987c-4d86-92a4-105c4ef3b270">2,178</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, end of period</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:11pt;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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjUtMS0xLTEtNzY5MTA_443ba056-61b4-4619-8fa4-8bf5a10901c9">41</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:11pt;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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjUtMy0xLTEtNzY5MTA_3cf90187-7e95-46b8-81e2-1b086a5193fa">381</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:11pt;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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjUtNS0xLTEtNzY5MTA_cb08dcaa-e9da-4921-80f8-1ec3beb3884c">41</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:11pt;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:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjUtNy0xLTEtNzY5MTA_54d44e47-e230-4d53-a453-4a9ffd44def2">381</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><td colspan="3" style="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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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.</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="i3e35699d61d94f84beb74724f5f81a53_31"></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%">September&#160;30, 2022</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="i3e35699d61d94f84beb74724f5f81a53_34"></div><div><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:NatureOfOperations" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18zNC9mcmFnOjAwM2IyNjk5OGMzMTQ0MGE5Njk3YzZjZWRiYTg2ZGYyL3RleHRyZWdpb246MDAzYjI2OTk4YzMxNDQwYTk2OTdjNmNlZGJhODZkZjJfMTU0MQ_c24f4194-cd17-4fa6-84bb-246f5a3c54f3" continuedAt="i0e553b0005d5427dbbb21a74054a7806" escape="true">NATURE OF</ix:nonNumeric></span><ix:continuation id="i0e553b0005d5427dbbb21a74054a7806" continuedAt="i648c62fbd33c491c80bad4abf901715b"><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><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"><ix:continuation id="i648c62fbd33c491c80bad4abf901715b">Energy Focus, Inc. engages primarily in the design, development, manufacturing, marketing and sale of energy-efficient lighting and controls systems products. We develop, market and sell high quality light-emitting diode (&#8220;LED&#8221;) lighting and controls products in the commercial market and military maritime market (&#8220;MMM&#8221;), and expanded our offerings into the consumer market beginning in the fourth quarter of 2021. Our mission is to enable our customers to run their facilities, offices and homes with greater energy efficiency, productivity, and human health and wellness through advanced LED retrofit solutions. Our goal is to be the human wellness lighting and LED lighting technology and market leader for the most demanding applications where performance, quality, value, 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-grade tubular LED (&#8220;TLED&#8221;) products, as well as other LED and lighting control products for commercial and consumer applications. After evaluating market demand and supply chain challenges for our ultraviolet-C light disinfection products, we have revised our marketing strategy to primarily focus on our MMM and commercial and industrial lighting and control products.</ix:continuation></span></div><div id="i3e35699d61d94f84beb74724f5f81a53_40"></div><div style="margin-bottom:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MDE_e6e33af7-8886-4439-9593-86f20bcdfefc" continuedAt="ib96ce6bc78f5481393cfccee0a4ec07c" 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><ix:continuation id="ib96ce6bc78f5481393cfccee0a4ec07c" continuedAt="ic55653600931437e992e12a5631342e2"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1ODM_80d90a81-45e4-4138-bd2d-55ac7c36918c" 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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><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 and nine months ended September&#160;30, 2022 and 2021 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, 2021 (&#8220;2021 Annual Report&#8221;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2021 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 style="margin-bottom:10pt"><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 September&#160;30, 2022 and December&#160;31, 2021, Condensed Consolidated Statements of Operations for the three and nine months ended September&#160;30, 2022 and 2021, Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the three and nine months ended September&#160;30, 2022 and 2021, and Condensed Consolidated Statements of Cash Flows for the three and nine months ended September&#160;30, 2022 and 2021.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:UseOfEstimates" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MDQ_50232bf8-5156-4836-9348-f4ba09ab7b97" escape="true"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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></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%">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%">September&#160;30, 2022</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="ic55653600931437e992e12a5631342e2" continuedAt="i7a62eb988e4d46679850e5ef1f55744d"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ConcentrationRiskCreditRisk" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2Mjg_737d76a7-380d-4d7c-9768-b5452453c855" escape="true"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 September 30, 2022, sales to a regional commercial lighting retrofit company accounted for approximately <ix:nonFraction unitRef="number" contextRef="i37f4c9acc3e84d8589b8090148a76c4b_D20220701-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMzU2NA_d70fd594-995e-4c2d-ae2d-c92ebdd9f446">32</ix:nonFraction>% of net sales. For the three months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately <ix:nonFraction unitRef="number" contextRef="i6d1f5375b6c449b683d6f36eef2b9818_D20210701-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMzk2OA_e4323f10-35d5-4e4b-a33e-e9a9532cf54e">19</ix:nonFraction>%, <ix:nonFraction unitRef="number" contextRef="i5800fccfc6b34922ac202430d4a66a4a_D20210701-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM0OTg2_839ddd1d-9502-4669-850b-9e43d10b6527">17</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="if37ada2510094a07a155169b18c4fc52_D20210701-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMzk3NQ_17de25ce-8b15-4497-be23-b17766442ade">27</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="ie3a7432bc77b4b52ba3fc4e82f9e6617_D20210701-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDE5MQ_896b36f8-0e15-42e1-9fd8-e3e307f162ee">36</ix:nonFraction>% of net sales for the same period.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the nine months ended September 30, 2022, sales to our primary distributor for the U.S. Navy, a regional commercial lighting retrofit company, and a commercial building system provider, accounted for approximately <ix:nonFraction unitRef="number" contextRef="ib42f96b7a9ef42958902850aa8da2a07_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDM5MQ_8e7e88cd-1efa-46c7-975c-1fc0d8b9b5fb">13</ix:nonFraction>%, <ix:nonFraction unitRef="number" contextRef="i8fbc883572984a8db2394a7424b018ce_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTAzMw_7b697132-2a64-497e-ab2a-19ff8df2848b">15</ix:nonFraction>%, and <ix:nonFraction unitRef="number" contextRef="i12126535a0fc4e958a3056dc027bb8e7_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTE4NA_b707e615-4ce8-4ef7-917a-7d9db5788c45">10</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="idf78687acd0a453da6d6a1491a0d86fe_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDYxOQ_70c7f03b-84bc-4ebe-a9de-6a58213e84c7">17</ix:nonFraction>% of net sales for the same period. For the nine months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately <ix:nonFraction unitRef="number" contextRef="i7d5bd3f5b1044e9eb88a46e2b6f10b52_D20210101-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDc5Mw_bf70188b-c9b4-4cbf-b32d-5429468abf9a">33</ix:nonFraction>%, <ix:nonFraction unitRef="number" contextRef="i59b4afaff0e54a2aa40df1997cfefdba_D20210101-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM1NDUw_c84d244f-0693-44ca-ba5c-2c6179fb37cc">10</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i153fde08482f49c5805c0eac12afbc2a_D20210101-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDgwMA_296fa0b0-beb1-4fe5-a366-ba399861beeb">17</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="i46ace4c4778e4e2c98558315008887d0_D20210101-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTAxNg_00a258d1-e303-43a5-8c60-d138cfeb852d">43</ix:nonFraction>% of net sales for the same period.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A regional commercial lighting retrofit company, a commercial building systems provider, and a U.S. Navy mechanical contractor accounted for approximately <ix:nonFraction unitRef="number" contextRef="i607a49302ca54560b819864785669346_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTM2MA_39f78396-3323-4011-974c-8ab3cca3a892">25</ix:nonFraction>%, <ix:nonFraction unitRef="number" contextRef="i82f9247d41564f12b19716497b0e894b_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTM2NA_755d2ea0-5a2c-4b06-b358-62d7ad597039">12</ix:nonFraction>%, and <ix:nonFraction unitRef="number" contextRef="ic32feaaefe8f4d1ca318e81d1b95a5ad_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTUwNA_0cc424a6-1e2b-4d1d-a1a1-6398b5e81fac">12</ix:nonFraction>% of net trade accounts receivable, respectively, at September&#160;30, 2022. At December&#160;31, 2021, a distributor to the U.S. Department of Defense accounted for <ix:nonFraction unitRef="number" contextRef="i64dfeecdee55408ba8766b6f20b3409c_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTMxNA_3e7b9284-7855-4fbf-9e02-03ce314d2560">20</ix:nonFraction>% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for <ix:nonFraction unitRef="number" contextRef="i896af6da142744728609e22fd51555e1_D20210701-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQwNA_80cdc68e-40a9-4747-a320-72d1775cb8a8">36</ix:nonFraction>% of our net trade accounts receivable.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">One offshore supplier accounted for approximately <ix:nonFraction unitRef="number" contextRef="i4d7fb0d31bca438baa1a780ce7f8a55f_D20220701-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5Ng_8ae0646c-35b9-424b-8987-57b7e03d2dc8">17</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i4f7a65ca10534d1bacbb2510731f2218_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM2ODUw_2ae99983-b3fe-4319-a7ea-00d588a60e51">18</ix:nonFraction>%, respectively, of our total expenditures for the three and nine months ended September&#160;30, 2022. For the three and nine months ended September&#160;30, 2021, one offshore supplier accounted for approximately <ix:nonFraction unitRef="number" contextRef="i40025df90bd74afeb2e9c863a024524b_D20210701-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM1Njk2_c1cf6305-f0ec-42c0-9d1e-2d5e0a02890b">19</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i29deb08bfce44cdb8d52f6ec6180beb6_D20210101-20210930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM1NzAw_02ffea58-29b2-4602-a70d-63f260776b00">30</ix:nonFraction>%, respectively, of total expenditures.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At September&#160;30, 2022, one offshore supplier accounted for approximately <ix:nonFraction unitRef="number" contextRef="icb9710d710d94438aaa44c0d3eeea12b_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTgzNA_4db0744b-7a90-4515-9e43-7c731febc631">45</ix:nonFraction>% of our trade accounts payable balance. At December&#160;31, 2021, this offshore supplier accounted for approximately <ix:nonFraction unitRef="number" contextRef="i98875a9fd97e463b943e870204e8a130_D20210101-20211231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTkzNA_fb1e961c-0fbd-4111-88be-1e3c2eb0a283">60</ix:nonFraction>% of our trade accounts payable balance.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MTM_a7f02be7-6ac7-4e0a-95c3-3f42f99a214b" escape="true"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent accounting pronouncement</span></div><div style="margin-bottom:10pt"><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 but do not expect any material financial statement impact upon adoption.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:RevenueRecognitionPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1Nzg_c65ceb69-d342-42da-a4ec-4b3de020e35d" continuedAt="i7f14da74d98b46abb84a0162a7e32935" escape="true"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue</span></div><div style="margin-bottom:10pt"><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 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 </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%">September&#160;30, 2022</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="i7a62eb988e4d46679850e5ef1f55744d" continuedAt="i8d1ec8b53d72481a893fbe5a1e683808"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i7f14da74d98b46abb84a0162a7e32935">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><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MTk_26bb9bf7-79ae-4ec7-bf93-b7e90b3fa529" escape="true"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.206%"></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: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:0.1%"></td><td style="width:0.400%"></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:9.114%"></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/>September 30,</span></td><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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</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%">2022</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%">2021</span></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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2022</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%">2021</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%">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="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;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></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="ib6c4d1b96db94b7e96e122931182a3d1_D20220701-20220930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfMy0xLTEtMS03NjkxMA_6d8b873f-a642-42fb-8ec4-ed8c709adb0a">1,288</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="ie5bbb9452ad74f3686293bff9ccff1ef_D20210701-20210930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfMy0zLTEtMS03NjkxMA_0cae41a9-1fe0-443a-814c-152471ed4939">1,522</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><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="i5c999f042b6d45b98aae39612a0c2f6a_D20220101-20220930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfMy02LTEtMS03NjkxMA_49de8062-2a89-4ff0-9d48-19cf10ed8850">3,397</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="if8d831283e96493096d152b5734ddaad_D20210101-20210930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfMy04LTEtMS03NjkxMA_8196d894-6ae1-4a4a-80a3-544cef85f275">3,513</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%">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="ifbbc8e2db54146eb8f8964e46e5cb19c_D20220701-20220930" decimals="-3" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNC0xLTEtMS03NjkxMA_a9accb58-2715-442c-99e7-61ffbbb2fd13">476</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="i46a150e0d07a49bf9a0c27bb0e38ed1a_D20210701-20210930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNC0zLTEtMS03NjkxMA_440613c1-8d40-4ae1-9810-973b7129f807">1,227</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><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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="i053f5844d2cb4947b57d374b1c41e110_D20220101-20220930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNC02LTEtMS03NjkxMA_f806f692-e270-492c-a166-2d5ba85e7b0e">1,908</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="i0eefc069d9d842f6a9222615d705a3d4_D20210101-20210930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNC04LTEtMS03NjkxMA_f53dc944-42fe-4347-b8bb-4086e8deb732">3,947</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: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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNS0xLTEtMS03NjkxMA_95316e00-a810-4b09-b093-1802e582668d">1,764</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNS0zLTEtMS03NjkxMA_2cae98db-e152-41cc-b14d-310e1f403200">2,749</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 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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNS02LTEtMS03NjkxMA_a4760036-e237-47c3-9f78-d283473a9ca2">5,305</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:Revenues" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNS04LTEtMS03NjkxMA_9fcc3397-781c-4d15-b720-27dd03ae84e6">7,460</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></table></div></ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MjA_2d15a4d3-d9c1-444f-a18d-0c6e493e6f93" escape="true"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our trade accounts receivable consists of amounts billed to and currently due from customers. Our customers are 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 a third-party account receivable insurance program with a very 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 credit-worthiness ratings and metrics that significantly assist us in evaluating the credit worthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of account receivables 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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 for major 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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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. For the three months ended September 30, 2022 and September&#160;30, 2021, less than <ix:nonFraction unitRef="number" contextRef="i4068fc9bca6746ad9993ef75d567d291_D20220701-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTA0NTM_07134af8-d3d9-4191-b179-fb960efa64fb">1</ix:nonFraction>% of sales were attributable to customers outside the United States. For the nine months ended September 30, 2022 and September&#160;30, 2021, approximately <ix:nonFraction unitRef="number" contextRef="i2f5f0d28ce19493dbd2e4fa1e79d641c_D20220101-20220930" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTA1NDk_a2cc379c-114e-494c-9d9a-80f214803d04">1</ix:nonFraction>% of sales were attributable to customers outside the United States. The geographic location of our net sales is derived from the destination to which we ship the product.</span></div><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:EarningsPerSharePolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1ODg_3b1c166c-e2aa-4cbc-b4d2-5712e3fd447b" escape="true"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 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%">September&#160;30, 2022</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="i8d1ec8b53d72481a893fbe5a1e683808" continuedAt="i6f5815f76fb24b2f9e00f8339fab54a2"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1ODA_e69b641f-8ba3-40fa-96b2-c23be84fff69" escape="true"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a reconciliation of basic and diluted loss per share computations (in thousands):</span></div><div style="margin-bottom:10pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.506%"></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.851%"></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: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:9.113%"></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/>September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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%">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="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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfMy0xLTEtMS03NjkxMA_51cd31c1-0ff6-47e6-85a8-b1b76b5562c7">2,662</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfMy0zLTEtMS03NjkxMA_a910ad03-75ca-43ad-971b-2245c4ada1c8">1,140</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfMy01LTEtMS03NjkxMA_94fce938-bb35-4972-a488-1ea453814bbb">7,969</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfMy03LTEtMS03NjkxMA_c891d308-1bb2-4e28-b101-59f305bb1006">5,255</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: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="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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%">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="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 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 and diluted 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi0xLTEtMS03NjkxMA_02951745-2058-431c-ad94-487ac7afe32b"><ix:nonFraction unitRef="shares" contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi0xLTEtMS03NjkxMA_66d7a635-cba0-4944-b614-25a015d465fa">9,190</ix:nonFraction></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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi0zLTEtMS03NjkxMA_3c4087a7-fce9-4884-acce-a549ebe07a2d"><ix:nonFraction unitRef="shares" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi0zLTEtMS03NjkxMA_60206e94-fe83-409b-82fd-aec84e273d2e">5,086</ix:nonFraction></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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi01LTEtMS03NjkxMA_8f5c7a82-d68b-4e4a-acd3-808c95685dfc"><ix:nonFraction unitRef="shares" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi01LTEtMS03NjkxMA_90e4e72d-f2e7-4c3e-bd1c-dc07dd76f52b">7,608</ix:nonFraction></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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi03LTEtMS03NjkxMA_26c88f8c-f2f9-4bdf-88ea-c28c194bdc00"><ix:nonFraction unitRef="shares" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi03LTEtMS03NjkxMA_711c4540-6adc-4796-b022-9d42a49a286c">4,309</ix:nonFraction></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></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 style="margin-bottom:10pt"><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 September 30, 2022,  warrants and convertible securities representing approximately <ix:nonFraction unitRef="shares" contextRef="i7d95b9eb53cd427c85ff41ec3ef9c73b_D20220701-20220930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTE2Nzg_8f3e3372-b77a-4344-a771-a8fbde575c3d">220</ix:nonFraction>&#160;thousand and <ix:nonFraction unitRef="shares" contextRef="icbf888d313d64174882c185ba203e2b2_D20220701-20220930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTE2ODU_8c209460-8d9d-4adb-a1a5-37ed179e793d">175</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. As a result of the net loss we incurred for the three months ended September 30, 2021, options, warrants and convertible securities representing approximately <ix:nonFraction unitRef="shares" contextRef="i1abbb7b455da4f6ea40a3c72ba069b13_D20210701-20210930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTE5ODU_5ee0f3b6-8ae3-4aa5-a80d-4399574da45e">41</ix:nonFraction>&#160;thousand, <ix:nonFraction unitRef="shares" contextRef="i549805fad92b42eca5ce18f05b2411ec_D20210701-20210930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTE5OTM_fea04cbd-3d03-41ef-bb67-794634b672f9">11</ix:nonFraction>&#160;thousand and <ix:nonFraction unitRef="shares" contextRef="i94743c8c339a4a698bd9f322be49c248_D20210701-20210930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTIwMDA_5ebba96c-58e1-432d-aa91-ce58ddefffa9">175</ix:nonFraction>&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation as their inclusion would have been anti-dilutive. </span></div><div style="margin-bottom:10pt"><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 nine months ended September 30, 2022, warrants and convertible securities representing approximately <ix:nonFraction unitRef="shares" contextRef="i12f89771e5024f029d3dc49537f86a70_D20220101-20220930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTIyOTE_cdb715b0-f873-4288-bafa-9ece9eeaca71">201</ix:nonFraction>&#160;thousand and <ix:nonFraction unitRef="shares" contextRef="i8f74a9e581e94e3db1059280cbfe8c07_D20220101-20220930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTIyOTg_a7beabe2-7e99-4b5b-ad49-e92d674d0862">175</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. As a result of the net loss we incurred for the nine months ended September 30, 2021, options, warrants and convertible securities representing approximately <ix:nonFraction unitRef="shares" contextRef="ib89d3b33574f4f60bbf58f4f5aa84bf3_D20210101-20210930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI1OTg_9651d4a6-a530-4cf2-83ee-836a83a5a966">60</ix:nonFraction>&#160;thousand, <ix:nonFraction unitRef="shares" contextRef="i15c650a4eaa14a1fa20d6d3d662b41b9_D20210101-20210930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI2MDY_7feae269-de6c-4716-824e-db858285251c">56</ix:nonFraction>&#160;thousand and <ix:nonFraction unitRef="shares" contextRef="idc8b649a3ca24d27aa950369a45b0f50_D20210101-20210930" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI2MTM_a3729e9b-c26d-40e6-bb5a-8936b23953bd">289</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><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:StandardProductWarrantyPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1NzM_3f823ba7-fe29-49da-b9eb-53fdfc7df7cc" escape="true"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We warrant our commercial and MMM LED products and controls for periods generally ranging from <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_3aa032ef-d1be-49b9-9d46-a1940c7bf3fc"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_c24d493e-2d1f-4b2e-a4a3-7b64303ed106">five</span></span> to <ix:nonNumeric contextRef="i9d2ec8f43f314ebcae8cfdecdf9fde7d_D20220101-20220930" name="efoi:StandardProductWarrantyNumberofYears" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODY_4622fe12-9247-4b1d-8f08-c368afe746b8"><ix:nonNumeric contextRef="i0ef25f5a819d48a08bda5c3f3fbb956b_D20220101-20220930" name="efoi:StandardProductWarrantyNumberofYears" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODY_7d33b8c8-c1d3-4e06-b897-6f40562d9840">ten years</ix:nonNumeric></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.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MDc_a39a9ed4-0748-49ca-92cd-9f7d050380e6" escape="true"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.806%"></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: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: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:9.114%"></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/>September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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%">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="i682c94a884c54808853513b639aaddba_I20220630" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMi0xLTEtMS03NjkxMA_5615b28d-b52e-48a3-b456-88fa7d00affd">315</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="i5be37111720b4e3db2683efa15ba1627_I20210630" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMi0zLTEtMS03NjkxMA_970d5341-ef88-4d71-8fb3-ef851875db8e">239</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMi01LTEtMS03NjkxMA_fb238eff-985f-4613-b07a-90cce432f497">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="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="i665a74c29f70404086fd8174e737d9ae_I20201231" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMi03LTEtMS03NjkxMA_ea056cdf-3bb2-41be-8a52-d05d1c75b777">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></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, net of changes in inventory reserves for replacements</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMy0xLTEtMS03NjkxMA_85cfe912-feb3-4bc1-a53a-c6f18e4eb79e">23</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMy0zLTEtMS03NjkxMA_c3ebf1fc-11f6-4d00-96bd-4559be7d4469">10</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMy01LTEtMS03NjkxMA_b79ccc6a-3b0d-4df7-a0af-d0a5e0502dcf">17</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMy03LTEtMS03NjkxMA_55dab6d6-cc90-4b8a-aa28-64dd4623b7cb">49</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%">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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNC0xLTEtMS03NjkxMA_c9c9b390-d0b6-4dd2-b85e-66c6f3f298ec">57</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNC0zLTEtMS03NjkxMA_87c343eb-9cb9-4dad-a759-365e5872579c">4</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNC01LTEtMS03NjkxMA_53a4a139-6955-4997-a215-77d94cffafe5">29</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNC03LTEtMS03NjkxMA_b1aa8e8d-3426-4fa7-9442-034941666de3">16</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 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNS0xLTEtMS03NjkxMA_dc99a37d-0ca1-4983-89fa-4571908848f8">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="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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" sign="-" name="efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNS0zLTEtMS03NjkxMA_319ae5e0-4b7b-4707-b16d-37a0ba3e8dc2">13</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNS01LTEtMS03NjkxMA_195af5c1-1d44-4c7f-a763-520e1907a0f2">7</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNS03LTEtMS03NjkxMA_1c3cd983-7af4-4447-94d1-fd74d96864f9">52</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: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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNi0xLTEtMS03NjkxMA_a3a04a0b-b080-4df1-adb6-e1f4aee0863a">242</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="i0c342207ebd74923bd8a639b59b00f4f_I20210930" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNi0zLTEtMS03NjkxMA_0a073eb1-8b32-445e-8722-07923fefbcda">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="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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNi01LTEtMS03NjkxMA_fa788d9f-31f3-44d7-a51e-f71a92728561">242</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="i0c342207ebd74923bd8a639b59b00f4f_I20210930" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNi03LTEtMS03NjkxMA_377f2f7c-65a1-40df-834c-aa677bbf8428">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></tr></table></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%">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%">September&#160;30, 2022</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="i6f5815f76fb24b2f9e00f8339fab54a2" continuedAt="ib1d85b9085cc4e89ab032187ab9be810"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1NjM_5f2f9391-f64a-4897-8cbd-d765b49ce59a" continuedAt="i884bb354b9694d3fab555842c8161c29" escape="true"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">June 2022 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2022, we completed a private placement (the &#8220;June 2022 Private Placement&#8221;) with certain institutional investors for the sale of <ix:nonFraction unitRef="shares" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="INF" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQwNDc_1b73b551-ee21-4391-a220-60c9dcdc492b">1,313,462</ix:nonFraction> shares of our common stock at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ib6093e256b84497da804afffdc20ab61_I20220930" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQxMDA_f2f3d06c-77f8-44ac-a07b-913a16c1c076">1.30</ix:nonFraction> per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#8220;June 2022 Pre-Funded Warrants&#8221;) to purchase <ix:nonFraction unitRef="shares" contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQyMzc_b89bff43-350e-46b5-b4c5-c55a8fdea448">1,378,848</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQyODc_377d8e46-f153-4e78-97d4-451669ca2b37">0.0001</ix:nonFraction> per share and (ii) warrants (collectively with the June 2022 Pre-Funded Warrants, the &#8220;June 2022 Warrants&#8221;) to purchase up to an aggregate of <ix:nonFraction unitRef="shares" contextRef="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ0MzI_88b7c47f-7261-4d0b-b92a-316bdada04f7">2,692,310</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ0ODI_a6593163-2265-45e7-9e16-e0a2d0199df4">1.30</ix:nonFraction> per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-3" name="efoi:PaymentsForPlacementAgentCommissions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ1OTE_c79454a2-c4cf-4493-8af7-6e99d723d138">252</ix:nonFraction>&#160;thousand, plus $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-3" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ2MDA_61f943b2-0447-42ee-9a1c-9307a5fff010">35</ix:nonFraction>&#160;thousand in expenses, and we also paid legal, accounting and other fees of $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-3" name="efoi:PaymentsForClearingFees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ2Njk_6910677c-2cb5-4e7d-a491-ee1050fb22c0">47</ix:nonFraction>&#160;thousand. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ2OTc_47d40fd3-dc07-4488-a36d-bfe9b4b0fa39">334</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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ5Mjk_762dce1a-5291-44b4-b753-9a4eaf730ea5">3.2</ix:nonFraction> million. We determined the exercise price of the June 2022 Pre-Funded Warrants to be nominal and, as such, have considered the <ix:nonFraction unitRef="shares" contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTUwNTE_b89bff43-350e-46b5-b4c5-c55a8fdea448">1,378,848</ix:nonFraction> shares underlying them to be outstanding effective June 7, 2022, for purposes of calculating net loss per share. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In July 2022, all of the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="ib6093e256b84497da804afffdc20ab61_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM2MTAw_40cdfaba-422c-498a-aab7-0b706e51f755">2,692,310</ix:nonFraction> shares remained outstanding, with a weighted average exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ib6093e256b84497da804afffdc20ab61_I20220930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTUyOTk_b6935464-1186-409c-952b-1752cf63faa9">1.30</ix:nonFraction> per share. The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $<ix:nonFraction unitRef="usd" contextRef="icbe2c1b605284d9ea336fc4b0c5b94b6_D20220701-20220930" decimals="-5" name="efoi:EstimatedProceedsFromIssuanceOfWarrants" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU0OTA_2ddf4016-2e7e-4d2d-abad-7d18c0a64551">3.5</ix:nonFraction> million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">December 2021 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we completed a private placement (the &#8220;December 2021 Private Placement&#8221;) with certain institutional investors for the sale of <ix:nonFraction unitRef="shares" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="INF" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU2ODc_09c512ba-a810-4675-a0b2-5bf3014aa789">1,193,185</ix:nonFraction> shares of our common stock at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i9ce48cbac2a74e9d94e19ade81ea2ba2_I20211231" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU3NDA_bf802b5e-45e1-44b6-81f3-5a2a0f2e4dea">3.52</ix:nonFraction> per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#8220;December 2021 Pre-Funded Warrants&#8221;) to purchase <ix:nonFraction unitRef="shares" contextRef="i8ddadf8727d94cc6b7723121484c1cd6_I20211231" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU4ODE_0ddbe389-3fa1-49c1-9383-b371a1ea1c57">85,228</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i8ddadf8727d94cc6b7723121484c1cd6_I20211231" decimals="INF" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU5MzE_9e931271-66cf-4634-a9ac-ffb14ad3e5b4">0.0001</ix:nonFraction> per share and (ii) warrants (collectively with the December 2021 Pre-Funded Warrants, the &#8220;December 2021 Warrants&#8221;) to purchase up to an aggregate of <ix:nonFraction unitRef="shares" contextRef="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYwODQ_f9957170-a9fc-456e-b307-eea0d6499822">1,278,413</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYxMzQ_26146e18-3f69-4552-81fb-4ca7bf24d801">3.52</ix:nonFraction> per share. In connection with the December 2021 Private Placement, we paid the placement agent commissions of $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-3" name="efoi:PaymentsForPlacementAgentCommissions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYyNDc_865e87c5-0b7a-4891-ade2-b1da598d50d9">360</ix:nonFraction>&#160;thousand, plus $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-3" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYyNTY_9ae57c64-ab1b-4835-82f4-7fb2258a8a7b">42</ix:nonFraction>&#160;thousand in expenses, and we also paid legal, accounting and other fees of $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-3" name="efoi:PaymentsForClearingFees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYzMjU_0919f815-bead-4e24-969c-1ad66bd6aa4f">97</ix:nonFraction>&#160;thousand. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYzNTM_d2a22f4d-2ad3-4595-840d-e71e12aacd13">499</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, 2021. Net proceeds to us from the December 2021 Private Placement were approximately $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTY1ODk_399e7735-23f7-42e1-a08d-dea0c05ff5d0">4.0</ix:nonFraction> million. We determined the exercise price of the December 2021 Pre-Funded Warrants to be nominal and, as such, have considered the <ix:nonFraction unitRef="shares" contextRef="i748bb2380fea4959930dec8b4d178b77_D20211216-20211216" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTY3MTU_40409803-3509-4b5a-b12e-70afca67f8dc">85,228</ix:nonFraction> shares underlying them to be outstanding effective December 16, 2021, for purposes of calculating net loss per share. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2022, all of the December 2021 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="i767ac6894c76456c8094aa95c522cc82_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTY5NzY_0cb42817-2ec3-4463-bcd7-17242d5658d4">1,278,413</ix:nonFraction> shares remained outstanding, with an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i767ac6894c76456c8094aa95c522cc82_I20220930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTcwMzQ_df84d91c-df5b-43d8-b11d-00e84ada4010">3.52</ix:nonFraction> per share. The exercise of the remaining December 2021 Warrants outstanding could provide us with cash proceeds of up to $<ix:nonFraction unitRef="usd" contextRef="i81f0616158c84d3fb1b6440205bf4b1f_D20220701-20220930" decimals="-5" name="efoi:EstimatedProceedsFromIssuanceOfWarrants" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTcxNTg_c0a60090-72f0-4b4c-a7a4-fd138da6f828">4.5</ix:nonFraction> million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">June 2021 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2021, we completed a registered direct offering of <ix:nonFraction unitRef="shares" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="INF" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTcyNjQ_281337d8-6943-4320-a915-e22fd24ddc16">990,100</ix:nonFraction> shares of our common stock to certain institutional investors, at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i0faf6b8b75e64d60b8cca4f20ea1033d_I20210630" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTczNTM_871e5d86-a65f-410b-95ad-81ba34f6d481">5.05</ix:nonFraction> per share (the &#8220;June 2021 Equity Offering&#8221;). We paid the placement agent commissions of $<ix:nonFraction unitRef="usd" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="-3" name="efoi:PaymentsForPlacementAgentCommissions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc0NDQ_be69806d-0c0a-4b6e-8964-20111804e632">400</ix:nonFraction> thousand, plus $<ix:nonFraction unitRef="usd" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="-3" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc0NTM_c6eb6022-2291-4d59-9d0d-a7fb60236e37">51</ix:nonFraction> thousand in expenses, in connection with the June 2021 Equity Offering, and we also paid legal and other fees of $<ix:nonFraction unitRef="usd" contextRef="ie0406c176cd64530aa241398cd71c792_D20210601-20210630" decimals="-3" name="efoi:PaymentsForClearingFees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc1NjA_12331ab7-6452-4c27-b6a3-117a829e95b2">18</ix:nonFraction>&#160;thousand. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="i12d643b8880e4367bc65f29dd3283f8b_D20220101-20220331" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc1ODg_b60c8499-82a5-4cdd-8d1f-1b8f9c9150e9">469</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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $<ix:nonFraction unitRef="usd" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc4MTg_657825aa-f5f7-422b-9072-c09e424174a9">4.5</ix:nonFraction> million.</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%">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%">September&#160;30, 2022</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="ib1d85b9085cc4e89ab032187ab9be810"><ix:continuation id="i884bb354b9694d3fab555842c8161c29"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">January 2020 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2020, we completed a registered direct offering of <ix:nonFraction unitRef="shares" contextRef="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131" decimals="INF" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc5MTM_c5ee9f9a-080d-4220-9d83-6034254ddf74">688,360</ix:nonFraction> shares of our common stock to certain institutional investors, at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i75c44893e522482d9da770d544c0738f_I20200131" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTgwMDI_860ce0fc-d93e-4b97-8677-feff7e904b7c">3.37</ix:nonFraction> per share. We also sold, to the same institutional investors, warrants to purchase up to <ix:nonFraction unitRef="shares" contextRef="i75c44893e522482d9da770d544c0738f_I20200131" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTgwOTQ_86174388-5a91-4250-a5ab-93e3f82c76a2">688,360</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="if6df7ef067004660ab3ca010df7407c3_I20200131" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTgxNDQ_243ba911-df0c-4f6a-b851-d20b71969036">3.37</ix:nonFraction> per share (the &#8220;Investor Warrants&#8221;) in a concurrent private placement (together with the concurrent registered direct offering, the &#8220;January 2020 Equity Offering&#8221;) for a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTgzMzU_d78276ba-7620-4b31-903b-119cd8171c42">0.625</ix:nonFraction> per warrant. In addition, we issued warrants to the placement agent to purchase up to <ix:nonFraction unitRef="shares" contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg0MjQ_a6715f94-7ef1-4a49-b855-d472e77652f3">48,185</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg0NzQ_5ad13216-d38d-48b1-b735-52f8e023e59d">4.99</ix:nonFraction> per share (together with the Investor Warrants, the &#8220;January 2020 Warrants&#8221;).</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022, January 2020 Warrants to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg2MTU_084dd7d7-40a2-4905-8e5a-570944b4fa76">229,414</ix:nonFraction> shares remain outstanding with a weighted average exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i11a6b7ac29a64570a16688c65c0b2098_I20220930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg2ODY_7d70fb58-ee6c-4225-8845-d103b9987540">3.67</ix:nonFraction> per share. The exercise of these warrants could provide us with cash proceeds of up to $<ix:nonFraction unitRef="usd" contextRef="ife2256486c774b86ada936065734d99d_D20220101-20220930" decimals="-3" name="efoi:EstimatedProceedsFromIssuanceOfWarrants" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg3NzY_85637264-8790-4427-901c-adc65b6bbeda">0.8</ix:nonFraction> million in the aggregate. During the nine months ended September 30, 2022, <ix:nonFraction unitRef="shares" contextRef="ife2256486c774b86ada936065734d99d_D20220101-20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg4MTI_64823742-5811-489e-860b-f6930b3bf724">none</ix:nonFraction> of these warrants were exercised. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2021, January 2020 Warrants to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg5MDk_a7ffc5bb-17b3-47c8-ba1e-0e3586fd23d6">310,860</ix:nonFraction> shares remained outstanding with a weighted average exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i7c5ac06956994272be453a5b5ee648f3_I20210930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg5ODM_d8f97fbd-42c2-4cc6-884c-380a4ac1c2ab">3.59</ix:nonFraction> per share. During the nine months ended September 30, 2021, <ix:nonFraction unitRef="shares" contextRef="i06883d1c8c934bbb8b0580de82e8da76_D20210101-20210930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTkwMTI_fe91fa20-fbd4-4c81-a511-d2dde7f22ee0">156,446</ix:nonFraction> January 2020 Warrants were exercised resulting in total proceeds of $<ix:nonFraction unitRef="usd" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:ProceedsFromWarrantExercises" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTkwODM_9fff75e3-f16d-4211-ad76-cd5ee38586ca">527</ix:nonFraction>&#160;thousand.</span></div><div style="margin-bottom:10pt"><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 Measurements</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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></ix:continuation></ix:continuation><div id="i3e35699d61d94f84beb74724f5f81a53_46"></div><div style="margin-bottom:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTkyOQ_8825c641-2b60-4686-955b-fe8843a20bec" continuedAt="iec6af312a9bc45808df03879463c71ef" escape="true">RESTRUCTURING</ix:nonNumeric></span></div><ix:continuation id="iec6af312a9bc45808df03879463c71ef" continuedAt="i2308e3b259994d90882d62903254e10c"><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no restructuring credits or expense recorded for the three and nine months ended September&#160;30, 2022. For the three months ended September 30, 2021, we recorded nominal net restructuring expense and for the nine months ended September 30, 2021, we recorded a net restructuring credit of approximately $<ix:nonFraction unitRef="usd" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="us-gaap:RestructuringCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfNTQ5NzU1ODI0MDcx_c940c9dd-becd-40ac-9fcb-5ca79a14f22b">21</ix:nonFraction>&#160;thousand, 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 2021 Annual Report.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The lease obligation on our former New York, New York office was settled as of June 30, 2021. Our restructuring liabilities consisted of estimated ongoing costs related to long-term operating lease obligations, which the Company exited. The recorded value of the lease obligation was 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 were measured using the credit adjusted, risk free rate that was used to measure the restructuring liabilities initially.</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%">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%">September&#160;30, 2022</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="i2308e3b259994d90882d62903254e10c" continuedAt="id9eec4ee3fa1464ab9de34e815607265"><div style="margin-bottom:10pt"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTkzMQ_59d22c4e-0ec1-4a49-a368-f1e829d4e255" escape="true"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:81.632%"></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:16.168%"></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="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></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="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: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="ia1df6a9ccabb4f79b31bd886a2658fa8_I20201231" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RhYmxlOjhjMGRlM2RmYzgwZTQzMWNiZTE2ODJhOTllODI2YmU3L3RhYmxlcmFuZ2U6OGMwZGUzZGZjODBlNDMxY2JlMTY4MmE5OWU4MjZiZTdfMS0zLTEtMS03NjkxMA_55fd2a43-3d9f-420a-8243-7924ddf7d71b">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></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 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="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="i9fd2512855984eebaa00786549fbb063_D20210101-20210930" decimals="-3" name="us-gaap:PaymentsForRestructuring" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RhYmxlOjhjMGRlM2RmYzgwZTQzMWNiZTE2ODJhOTllODI2YmU3L3RhYmxlcmFuZ2U6OGMwZGUzZGZjODBlNDMxY2JlMTY4MmE5OWU4MjZiZTdfMy0zLTEtMS03NjkxMA_e5d49577-5ac9-40fb-9adf-8316183c9e61">11</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:10pt;font-weight:700;line-height:100%">Balance at September 30, 2021</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="i68d6701437424d0099a8bc50df3a69c3_I20210930" decimals="-3" name="us-gaap:RestructuringReserve" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RhYmxlOjhjMGRlM2RmYzgwZTQzMWNiZTE2ODJhOTllODI2YmU3L3RhYmxlcmFuZ2U6OGMwZGUzZGZjODBlNDMxY2JlMTY4MmE5OWU4MjZiZTdfNC0zLTEtMS03NjkxMA_102d7b6f-8cee-4daf-b1b8-748b66a19258">&#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></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></ix:nonNumeric></div><div style="margin-bottom:10pt"><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 began to tailor our operating expenses to be more in line with our expected sales volumes. Throughout 2022, we have continued to aggressively pursue cost reduction activities, including reducing staffing levels, inventory levels and our real estate footprint, but sales volume have trailed these ongoing cost control efforts. 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 September&#160;30, 2022. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Throughout 2021 and 2022, we have continued to evaluate and assess strategic options as we seek to achieve profitability. We plan to continue to develop advanced lighting and lighting control technologies and introduce impactful new products surrounding 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%">, our patented, breakthrough powerline control platform. We also continue to believe our proprietary 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%"> emergency backup lighting system addresses a market need and will continue to help drive commercial sales for us as it has been well received in the market.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We plan to achieve profitability by growing our sales, primarily through existing and new commercial and industrial lighting and control systems and by continuing to refine and execute on our multi-channel sales strategy that targets key verticals, such as government, healthcare, eldercare, education, and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships, as well as our emerging consumer market focus.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As described in Note 9, &#8220;Stockholders&#8217; Equity,&#8221; we also raised approximately $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzE3Ng_762dce1a-5291-44b4-b753-9a4eaf730ea5">3.2</ix:nonFraction> million of net proceeds upon the issuance of common stock and June 2022 Warrants in connection with the June 2022 Private Placement, $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzMwNA_399e7735-23f7-42e1-a08d-dea0c05ff5d0">4.0</ix:nonFraction> million of net proceeds upon the issuance of common stock and December 2021 Warrants in connection with the December 2021 Private Placement, and approximately $<ix:nonFraction unitRef="usd" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzQ1OA_657825aa-f5f7-422b-9072-c09e424174a9">4.5</ix:nonFraction> million of net proceeds upon the issuance of common stock in connection with the June 2021 Equity Offering. As described in Note 7, &#8220;Debt&#8221;, in September 2022, April 2022 and April 2021, we obtained net proceeds from bridge financing of approximately $<ix:nonFraction unitRef="usd" contextRef="if962f91bd3a94df6aae226599884db1d_D20220901-20220930" decimals="-5" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfNTQ5NzU1ODI4Mjc3_944643da-53c9-417d-bd53-c92226b5f91d">0.5</ix:nonFraction> million, $<ix:nonFraction unitRef="usd" contextRef="i7bb635b2936646fd95b0eba62bd3b2a0_D20220401-20220430" decimals="-5" name="us-gaap:ProceedsFromIssuanceOfDebt" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzY4Nw_dc3dca20-3b37-41ae-824e-af9223d6df68">1.8</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="ib742238870fe478a8e2dec1d4e5d846d_D20210401-20210430" decimals="-5" name="us-gaap:ProceedsFromIssuanceOfDebt" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzY5NA_473b5359-39a4-47ef-9058-a0152370a289">1.5</ix:nonFraction> million, respectively. Also in April 2021, we expanded the borrowing capacity on one of our revolving credit facilities.</span></div><div style="margin-bottom:10pt"><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 taken throughout 2021 and continuing into 2022, as well as the June 2022 Private Placement, the December 2021 Private Placement and the June 2021 Equity Offering that strengthened our balance sheet, our credit facility capacity increase and bridge financings in September 2022, April 2022 and April 2021, and the funds we expect to receive related to the Employee Retention Tax Credit (&#8220;ERTC&#8221;; see Note 11, &#8220;Other Income&#8221; for details), were all 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 willingness of our suppliers to continue partnering with us, the corresponding time and inventory management required to ramp up sales from new products, markets, and customers into this sales cycle, the timing of introductions of additional new products, significant competition, potential sales volatility given our customer concentration, numerous interruptions and cost increases in the supply chain globally, and the long-term economic impact from the COVID-19 pandemic that has significantly diminished the interest and activities for our customers&#8217; lighting retrofit projects until occupancy returns to more normal levels, among other factors.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, global supply chain and logistics constraints are impacting our inventory purchasing strategy, as we seek to manage both shortages of available components and longer lead times in obtaining components while balancing the development and implementation of an inventory reduction plan. Disruptions in global logistics networks are also impacting our lead times and ability to efficiently and cost-effectively transport products from our third-party suppliers to our facility. 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 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-weight:400;line-height:120%;padding-left:14.5pt">obtaining financing from traditional or non-traditional investment capital organizations or individuals; </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-weight:400;line-height:120%;padding-left:14.5pt">obtaining funding from the sale of our common stock or other equity or debt instruments; and</span></div><div style="margin-bottom:10pt;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-weight:400;line-height:120%;padding-left:14.5pt">obtaining debt financing with lending terms that more closely match our business model and capital needs.</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%">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%">September&#160;30, 2022</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="id9eec4ee3fa1464ab9de34e815607265"><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: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-weight:400;line-height:120%;padding-left:14.5pt">additional equity financing may not be available to us on satisfactory terms, particularly in light of the current price of our common stock, and any equity we are able to issue could lead to substantial dilution for current stockholders and have rights, preferences and privileges senior to our common stock;</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-weight:400;line-height:120%;padding-left:14.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="margin-bottom:10pt;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-weight:400;line-height:120%;padding-left:14.5pt">the current environment in the capital markets and volatile interest rates, combined with our capital constraints, may prevent us from being able to obtain adequate debt financing.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, if we are unable to find a permanent chief financial officer, it may be more difficult to obtain additional financing on satisfactory terms or at all. 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 style="margin-bottom:10pt"><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 ensure adequate 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, could provide us with an ability to finance our operations through the next twelve months and may mitigate the substantial doubt about our ability to continue as a going concern.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 23, 2022, we received a written notice, (the &#8220;Notice&#8221;), from the Listing Qualifications staff (the &#8220;Staff&#8221;) of The Nasdaq Stock Market (&#8220;Nasdaq&#8221;) that the Company is not in compliance with the requirement to maintain a minimum closing bid price of $1.00 per share, as set forth in Nasdaq Listing Rule 5550(a)(2) (the &#8220;Bid Price Requirement&#8221;) because the closing bid price of our common stock was below $<ix:nonFraction unitRef="usdPerShare" contextRef="i8d5a9099f5794e149564f34403f84182_I20220823" decimals="2" name="efoi:CommonStockClosingBidPriceThreshold" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzg0ODI5MDcxMTYyOQ_b3e2b254-a12a-47fb-b65d-d6e5dba3b30d">1.00</ix:nonFraction> per share for <ix:nonFraction unitRef="d" contextRef="i8d5a9099f5794e149564f34403f84182_I20220823" decimals="INF" name="efoi:NumberOfConsecutiveDaysForBidPriceBelowThreshold" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMTIwOTQ2Mjc5MjA2ODk_df300c3b-7957-4395-aece-5e581d33bbcf">30</ix:nonFraction> consecutive business days. The Notice does not impact the listing of our common stock on The Nasdaq Capital Market at this time. The Notice provided that, in accordance with Nasdaq Listing Rule 5810(c)(3)(A), the Company has a period of 180 calendar days from the date of the Notice, or until February 20, 2023, to regain compliance with the Bid Price Requirement. During this period, our common stock will continue to trade on The Nasdaq Capital Market. However, there can be no assurance that the Company will be able to regain compliance with the rule or will otherwise be in compliance with other Nasdaq listing criteria. If we are unable to regain compliance, Nasdaq may make a determination to delist our common stock.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 17, 2020, we received a letter from the Staff 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="ic7790ed3f19d47b4b19ed5db52c91404_I20200630" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTE0MQ_68c3b20b-6052-428d-955c-601c6e8fc6de">1,714,000</ix:nonFraction>. 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. In accordance with one part of the plan submitted to the Staff, we successfully modified our outstanding January 2020 Warrants and in December 2020, we reclassified $<ix:nonFraction unitRef="usd" contextRef="i4205067b75474f23a9af870a7acc0c11_D20201201-20201231" decimals="-5" name="efoi:AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTQ5Nw_4b7e31ff-59dd-4df6-851b-76a364f049d8">1.4</ix:nonFraction>&#160;million from warrant liability into equity. 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 December 31, 2020, our stockholders&#8217; equity was $<ix:nonFraction unitRef="usd" contextRef="i665a74c29f70404086fd8174e737d9ae_I20201231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTc4Ng_6d5c8ec6-3829-444f-aad2-361b12c04663">4,255,000</ix:nonFraction>, satisfying the Minimum Stockholders&#8217; Equity Rule. At December&#160;31, 2021, our stockholders&#8217; equity was $<ix:nonFraction unitRef="usd" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTg3Ng_8ff92efc-0fc1-43de-b20d-e425eaca27e6">6,209,000</ix:nonFraction> and at September&#160;30, 2022, our stockholders&#8217; equity was $<ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTkxOQ_23f3a706-a97b-4189-839e-065c79f96201">1,526,000</ix:nonFraction>.</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%">18</span></div></div></div><div id="i3e35699d61d94f84beb74724f5f81a53_49"></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%">September&#160;30, 2022</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:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:InventoryDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RleHRyZWdpb246NzExMjczMjhmMzdiNDhkYmFiNDJkNGNkMTgyZmE5YTZfOTI3_a071dc8c-24cb-467a-9778-8ed0e9f709a9" continuedAt="i9c1f5b97074a409cacab164d0a221967" escape="true">INVENTORIES</ix:nonNumeric></span></div><ix:continuation id="i9c1f5b97074a409cacab164d0a221967"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RleHRyZWdpb246NzExMjczMjhmMzdiNDhkYmFiNDJkNGNkMTgyZmE5YTZfOTMw_0d4acfda-12e5-455b-b9ba-4e113b0dfb9f" escape="true"><div style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.824%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.062%"></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.064%"></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%">September 30,<br/>2022</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/>2021</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:InventoryRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMS0xLTEtMS03NjkxMA_4f22008c-1482-4515-b4d7-a22c6b241013">3,584</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:InventoryRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMS0zLTEtMS03NjkxMA_cbc32801-8347-40cb-ac6a-88d2d2b5ea6e">3,882</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:InventoryFinishedGoods" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMi0xLTEtMS03NjkxMA_dbac86e3-b798-4f82-99ed-8e78337c6fbc">5,231</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:InventoryFinishedGoods" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMi0zLTEtMS03NjkxMA_1cfb74ce-53a5-4c56-b18d-00d040d3934f">7,034</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMy0xLTEtMS03NjkxMA_20f9c227-bc41-484f-a024-b39889852c2d">2,659</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:InventoryValuationReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMy0zLTEtMS03NjkxMA_ce7565ae-8d02-42da-8c16-0366a7c475fe">3,050</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfNC0xLTEtMS03NjkxMA_3cb0c16b-3cfb-4837-8630-f18eafc3d2ed">6,156</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfNC0zLTEtMS03NjkxMA_d53bd7b0-2dd6-4992-bb87-c3d3e88b3dc2">7,866</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 style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:48.299%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.062%"></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.062%"></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:11.062%"></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:11.065%"></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/>September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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="i682c94a884c54808853513b639aaddba_I20220630" decimals="-3" name="efoi:InventoryValuationReservesRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMi0xLTEtMS03NjkxMA_8aedb6cb-9898-4dfc-8181-d4b438152439">2,792</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="i5be37111720b4e3db2683efa15ba1627_I20210630" decimals="-3" name="efoi:InventoryValuationReservesRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMi0zLTEtMS03NjkxMA_753e926b-41b1-48dd-b463-08016f1caaae">2,956</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="efoi:InventoryValuationReservesRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMi01LTEtMS03NjkxMA_f56507d0-b3f1-407e-97fe-7596d04165b1">3,050</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="i665a74c29f70404086fd8174e737d9ae_I20201231" decimals="-3" name="efoi:InventoryValuationReservesRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMi03LTEtMS03NjkxMA_902d3bb0-3e9b-4f17-a289-e4e383a0bc1c">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></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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" sign="-" name="efoi:InventoryValuationReservesProvisionAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMy0xLTEtMS03NjkxMA_d433d401-8e66-469a-bff3-0ddcb7ae4fb1">241</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:InventoryValuationReservesProvisionAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMy0zLTEtMS03NjkxMA_6de7eb3f-9b03-4da7-989a-97a681af5b03">34</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" sign="-" name="efoi:InventoryValuationReservesProvisionAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMy01LTEtMS03NjkxMA_faac5206-a02a-4924-9aea-929278c3193c">442</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="efoi:InventoryValuationReservesProvisionAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMy03LTEtMS03NjkxMA_a7fcb724-8b8a-4ac6-b76d-c507441e8559">64</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: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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:InventoryValuationReservesSalesOfInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNC0xLTEtMS03NjkxMA_dedb35f7-9c2e-43a8-a1ea-c5cc78b9e227">21</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:InventoryValuationReservesSalesOfInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNC0zLTEtMS03NjkxMA_1e515ad0-bde3-49e8-9eb5-83226826d301">36</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:InventoryValuationReservesSalesOfInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNC01LTEtMS03NjkxMA_bf0aca70-212a-44cc-a20a-980132fbad1b">278</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:InventoryValuationReservesSalesOfInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNC03LTEtMS03NjkxMA_71be4ac6-b300-4934-86b9-080f341c7360">72</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%">Write-off for disposed inventory</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:InventoryValuationReservesWriteOffs" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNS0xLTEtMS03NjkxMA_09ef09cb-c6ae-4eab-9b6a-bd5c960e2bf4">353</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:InventoryValuationReservesWriteOffs" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNS0zLTEtMS03NjkxMA_2229702c-10fc-43cc-b919-a43ac47bfc38">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:InventoryValuationReservesWriteOffs" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNS01LTEtMS03NjkxMA_13c97dbf-be0a-4a6b-b996-9d254ea5cb29">555</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:InventoryValuationReservesWriteOffs" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNS03LTEtMS03NjkxMA_7ae784f7-12f2-4966-8302-12f855f50e82">&#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:10pt;font-weight:700;line-height:100%">Reserves for excess, obsolete, and slow-moving inventories</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: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;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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="efoi:InventoryValuationReservesRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNi0xLTEtMS03NjkxMA_5d7809f0-6dcb-414f-8056-9862b0e4ef11">2,659</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:10pt;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:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930" decimals="-3" name="efoi:InventoryValuationReservesRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNi0zLTEtMS03NjkxMA_2afaa999-d854-45eb-b0d2-db38f5a503f3">2,886</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:10pt;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:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="efoi:InventoryValuationReservesRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNi01LTEtMS03NjkxMA_c855fc05-7418-4f5a-9390-542396138dce">2,659</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:10pt;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:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930" decimals="-3" name="efoi:InventoryValuationReservesRawMaterials" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNi03LTEtMS03NjkxMA_e57e9b4d-0678-45cf-9ae8-cb85657e4624">2,886</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></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:112%">As part of our expense reduction initiatives, we significantly decreased our warehouse space beginning in the third quarter of 2022. In connection with the space reduction, in the second quarter of 2022, we began disposing of a substantial portion of our excess and obsolete commercial finished goods inventory that was highly reserved, which effort continued into the third quarter of 2022. As of September 30, 2022, approximately $<ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInventory1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RleHRyZWdpb246NzExMjczMjhmMzdiNDhkYmFiNDJkNGNkMTgyZmE5YTZfNTQ5NzU1ODE2NDk3_8306166e-ef09-49d7-9175-f48ba28eee53">563</ix:nonFraction>&#160;thousand, on a gross value basis, of such inventory had been disposed of. Additional inventory management efforts are expected to continue in the fourth quarter of 2022.</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%">19</span></div></div></div><div id="i3e35699d61d94f84beb74724f5f81a53_52"></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%">September&#160;30, 2022</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:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfMzY0_ea8a9d14-d7ce-485e-8c5e-91e2ff186456" continuedAt="i742ec01aa0c542f68e5446bda6bd6c4a" escape="true">PROPERTY AND EQUIPMENT</ix:nonNumeric></span></div><div style="margin-bottom:10pt"><ix:continuation id="i742ec01aa0c542f68e5446bda6bd6c4a" continuedAt="i8e327fe784ea4c6596080ba5762e240d"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfMzY5_f52e0f32-4467-4a0a-bec6-ef06f9926e80" escape="true"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.824%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.062%"></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.064%"></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%">September 30,<br/>2022</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/>2021</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="i659a22b1f88d43dd8304aab21de18fde_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmNhZjkxZjM0NTlkMzRjYWY4MzE2NzczZTJiZGMwNjRhXzI3_4f794e08-f365-468b-a0e7-f5c1ff1a6867">3</ix:nonNumeric> to <ix:nonNumeric contextRef="i60ee0e8736cc496c846b2201240c84a6_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmNhZjkxZjM0NTlkMzRjYWY4MzE2NzczZTJiZGMwNjRhXzMz_fdf6dc6f-beac-466d-8af4-c2b41ca37054">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="i1238089d6da54d3c8539d51de8626cda_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMS0xLTEtMS03NjkxMA_44f5cbf7-a30c-4e6a-9aff-135e80d95aaf">1,096</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="i9a7128568ce2469894023f4f6893b7bf_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMS0zLTEtMS03NjkxMA_d00aacfd-23df-4642-852c-68ecc7fc97c2">1,308</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="i24ce2512c7d24aa699d52a6a11351c14_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMi0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmExZjhkNzMzMWVlNjQ0MzY5MmRmODdiYzM2MmYzYjdmXzI1_37e30b2e-5347-4ff6-ab33-bf82202340ec">2</ix:nonNumeric> to <ix:nonNumeric contextRef="i830a5fc1ff324ae2a118bd1054516a3c_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMi0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmExZjhkNzMzMWVlNjQ0MzY5MmRmODdiYzM2MmYzYjdmXzMx_7c27a2f0-9a16-451e-9df4-eface0715ae9">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="i86dcc6fe9135449ba9d46e0677d6b66a_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMi0xLTEtMS03NjkxMA_37630e01-5124-4b3c-8416-3cefcc07bb70">413</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="i6b8e752b884f4eb08571d66b9b0dcd17_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMi0zLTEtMS03NjkxMA_69c8b84b-b7af-4622-9682-2f971ad75ff0">384</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="ie0b83f3b603e49478cb9610d3da391dc_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMy0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjEzZTc2ZmRiNzE5YTRiMGU5Njg1ZWQ1OWY1OGJlMGZmXzI2_2cfbae37-3391-4050-bf50-3d1c5d40b636">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="i7a590b8ad79c4667af1d3cd26ffcb56d_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMy0xLTEtMS03NjkxMA_cccde1e9-be13-47dd-bee1-74a079815460">81</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="i7c439466ba374205986fa7cb14be2a0b_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMy0zLTEtMS03NjkxMA_c8d09c22-5e54-4526-aec4-d006106a4394">83</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="ia5562b5bdb584c64835b3f2bb0e9439f_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNC0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmY0OWI1NTVhMTA0NDQzZTlhOTA3YWRhN2Y3MTdhMzM4XzQw_2a7b00bb-6187-4bab-a57a-e5ec691e9c88">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="i3e344b971b5a476691993700b1257fbd_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNC0xLTEtMS03NjkxMA_b649cfd1-3dd5-4b61-b35d-56511acd40bf">86</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="i9612b013077d42318d0d5227ee973c48_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNC0zLTEtMS03NjkxMA_7adb6b3b-d5c7-4299-9419-0711bf0b7ea0">86</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="iabd9dc0011de493fa7d5694fec513177_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjRhMDY4NWFmMDEyYjRjYzNhYjNkNjJkODYxZWZlZTJhXzM1_5dca8779-3773-40fb-9ff2-0e5efd698cab">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="ibbf4fde323d2407c8d23f7b6e5b0b288_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNS0xLTEtMS03NjkxMA_8bfbd526-8f97-4c23-af3b-6621c3ea4f40">1,144</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="ib04900d5da684b8290217bf5396c4518_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNS0zLTEtMS03NjkxMA_123a7162-98f7-4f0d-b101-2b6f2f0d0af7">1,194</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="ib51bc3cbc26c483088e0902b28039501_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNi0xLTEtMS03NjkxMA_8af3bb2f-2b56-47a5-b84d-cd0e3069965a">141</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="i90c363b72c2c474fbafe16c0ed016d62_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNi0zLTEtMS03NjkxMA_c4db61c2-d819-4800-9ea3-3f477f32dd9e">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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNy0xLTEtMS03NjkxMA_aaee2beb-80e0-4cc4-b5e2-e42e3f62afe3">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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNy0zLTEtMS03NjkxMA_cc9eed05-894c-4c7d-a170-b332554770ca">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"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">mUVe</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;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:100%"> ultraviolet-C light disinfection robots (useful life <ix:nonNumeric contextRef="i19afb847ee1b409e8afdd00bb3187db3_D20220101-20220930" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOC0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjk5OGZmMzZlN2Q2MTQwM2E4NzE4YTdmZDRmOGM2MzBmXzI5_6a8f3205-a366-4c72-80cc-d05338d6ac82">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="i6b68b29bf54b4763a478d9538bdbded1_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOC0xLTEtMS03NjkxMA_d16c5d4b-f45a-4191-8977-9be23df3771e">&#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="ib7f854dbc9e847d7982f8d9eda2357cd_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOC0zLTEtMS03NjkxMA_91582f1c-9a3b-459a-80da-a19ae0ad7302">105</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%">Projects in progress</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="icc913f9acb27416c8be4ca7f04596c4d_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOS0xLTEtMS03NjkxMA_32758ff1-c13c-4b91-8ce7-8e88ca424117">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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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="i791e06876671458fb0b76c5c1ec3b640_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOS0zLTEtMS03NjkxMA_e95bdddf-adc0-4cc0-a5d8-5d17b4e8d027">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 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:#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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTAtMS0xLTEtNzY5MTA_d1647617-f751-4186-a822-422c7ee24b3b">3,042</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTAtMy0xLTEtNzY5MTA_32af7448-1c89-4dc2-aaa9-b6bafc93705f">3,477</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><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%">Less: accumulated 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:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTEtMS0xLTEtNzY5MTA_cf6da0e9-a652-42d0-af1e-63bacf49f724">2,609</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTEtMy0xLTEtNzY5MTA_b2bf7b8a-c276-43a3-8eaa-d0be5a2b0259">2,802</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:10pt;font-weight:700;line-height:100%">Property and equipment, net</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTItMS0xLTEtNzY5MTA_cfa366e4-3edc-4340-95cc-639749c417a6">433</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTItMy0xLTEtNzY5MTA_0ef0ceb8-8cc8-4c24-b3e5-06dfa4ef86c8">675</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></table></ix:nonNumeric></ix:continuation></div><div style="margin-bottom:10pt"><ix:continuation id="i8e327fe784ea4c6596080ba5762e240d" continuedAt="i36b20202a08f4e5f9544f6e59302e6fd"><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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfNTQ5NzU1ODE0MjYy_05875244-0831-408a-86dd-37de38a02a4e">42</ix:nonFraction>&#160;thousand and $<ix:nonFraction unitRef="usd" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfNTQ5NzU1ODE0Mjcw_94abc308-4a31-4101-a060-adba8df8df37">43</ix:nonFraction>&#160;thousand for the three months ended September 30, 2022 and 2021, respectively. For the nine months ended September 30, 2022 and 2021, depreciation expense was $<ix:nonFraction unitRef="usd" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfNTQ5NzU1ODE0Mjc5_d60e6122-568f-4b22-ae97-92a43c61c481">129</ix:nonFraction>&#160;thousand and $<ix:nonFraction unitRef="usd" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfNTQ5NzU1ODE0Mjg5_c5aefec1-3142-4056-a644-75ec3fbbc3e9">143</ix:nonFraction>&#160;thousand, respectively. During the third quarter of 2022 it was determined that the mUVe</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></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="i36b20202a08f4e5f9544f6e59302e6fd"> ultraviolet-C light disinfection robots were no longer of use and the net book value of $<ix:nonFraction unitRef="usd" contextRef="id8164c90a0cc4543850c20165375ea5f_D20220701-20220930" decimals="-3" sign="-" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfMzg0ODI5MDY5ODM1MQ_683a5394-0c7c-451d-ac6e-650c91bfdb27">76</ix:nonFraction>&#160;thousand was recorded as a loss on write-off of fixed assets.</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%">20</span></div></div></div><div id="i3e35699d61d94f84beb74724f5f81a53_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%">September&#160;30, 2022</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:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:LesseeOperatingLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA3Ng_57481a38-f59b-4209-b949-f56993c91a4c" continuedAt="i01074fa3a9bf413fa86f20b01ce9bb5d" escape="true"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:LesseeFinanceLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA3Ng_9a3ac71d-c39e-46cd-9a84-1bebfd6119b5" continuedAt="i9e689c25331646988692b0ce804cb011" escape="true">LEASES</ix:nonNumeric></ix:nonNumeric></span></div><ix:continuation id="i01074fa3a9bf413fa86f20b01ce9bb5d" continuedAt="i04067b26072445738c1b53cf2a563683"><ix:continuation id="i9e689c25331646988692b0ce804cb011" continuedAt="ie61541b24b21458cb9e10760406eb483"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2027 under which it is responsible for related maintenance, taxes and insurance. The Company had one finance lease containing a bargain purchase option that was not renewed upon expiration of the lease during the second quarter of 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 our equipment operating leases had been extended through 2026. Additionally, as of March 25, 2022, in connection with extending through 2027, the terms of our expiring headquarters real estate operating lease for manufacturing, warehouse and office space have been modified beginning July 1, 2022 to reflect a smaller footprint at reduced costs. In accordance with Accounting Standards 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;), as a result of the extension, the related lease liability was remeasured and the right-of-use asset was adjusted for each lease at the time of modification in January 2021 and March 2022. The present value of the lease obligations for these leases were calculated using an incremental borrowing rate of <ix:nonFraction unitRef="number" contextRef="i1238089d6da54d3c8539d51de8626cda_I20220930" decimals="4" name="efoi:LesseeOperatingLeaseInterestRateEffectiveRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfMTQ2Nw_07f9162b-af9e-44c9-9b67-94454418ff70">15.93</ix:nonFraction>% for the equipment lease and <ix:nonFraction unitRef="number" contextRef="i3ac220694ef94d599b5c4bcd6bc2f797_I20220930" decimals="4" name="efoi:LesseeOperatingLeaseInterestRateEffectiveRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfMTQ5OA_f61fe236-5d41-4e25-81a8-adf9d6e6b48d">16.96</ix:nonFraction>% for the real estate lease, which were the Company&#8217;s blended borrowing rates (including interest, annual facility fees, collateral management fees, bank fees and other miscellaneous lender fees) 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 other remaining lease obligations continues to be calculated using an incremental borrowing rate of <ix:nonFraction unitRef="number" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="4" name="us-gaap:LesseeOperatingLeaseDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfMTk5OA_7b9fa6c3-db53-4cb2-815e-d2c9716d1125">7.25</ix:nonFraction>% (which excludes the annual facility fee and other lender fees), 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 the operating leases is <ix:nonNumeric contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfMjI4Mg_6161ccb6-f224-4772-b3c8-89203cfb6920">4.7</ix:nonNumeric> years.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 expired in June 2021. 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 Standards 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 sublease income in future years as of December&#160;31, 2020. The Company continued to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and continued to accrete those liabilities in accordance with Accounting Standards 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 2021 Annual Report.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no finance lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021. <ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:LeaseCostTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA3Mw_3c970a7c-c355-4666-b8b5-8bc6d112f287" continuedAt="ice98d917e83d4442b3d5fde3001aef4f" escape="true">Components of the operating and restructured lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021, were as follows (in thousands):</ix:nonNumeric></span><ix:continuation id="ice98d917e83d4442b3d5fde3001aef4f"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:50.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.161%"></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:10.161%"></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:10.161%"></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:10.163%"></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 September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended September 30,</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%">2022</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%">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%">2022</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%">2021</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 lease cost (income)</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><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><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 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 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:SubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMy0xLTEtMS03NjkxMA_aac5d087-f25d-4a42-b9df-fe57261f13bb">9</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:SubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMy0zLTEtMS03NjkxMA_f0f9fa6c-60af-4ac2-911d-0abf81d4ec29">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:SubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMy01LTEtMS03NjkxMA_20ea904a-3f34-47d3-9434-9b59015c5b8b">90</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:SubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMy03LTEtMS03NjkxMA_730ef4e2-3508-4237-8664-2267f7cb4f3a">87</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 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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:OperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNC0xLTEtMS03NjkxMA_9d1b8e2a-7ffd-49e4-9776-dc7577a41a23">83</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:OperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNC0zLTEtMS03NjkxMA_15825a56-2c8b-4c51-aaca-c02136cd9937">139</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:OperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNC01LTEtMS03NjkxMA_446a6524-04ed-4f0a-b3ef-0a867ec137c6">298</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:OperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNC03LTEtMS03NjkxMA_fb5c1d37-54eb-4fd4-817b-62c3ef6f46a8">423</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%">Operating lease cost, net</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:OperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNS0xLTEtMS03NjkxMA_24ad41f4-2a28-4506-a2bb-85305d6e2b40">74</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:OperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNS0zLTEtMS03NjkxMA_4fd947d2-cb0a-4329-9f0a-6a8bc12c6912">114</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:OperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNS01LTEtMS03NjkxMA_69a98ad9-9a34-4e5a-905e-eef66d399b30">208</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:OperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNS03LTEtMS03NjkxMA_51300650-8570-4987-8990-d120827dfe26">336</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:8pt"><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;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;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="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%">Restructured lease cost (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="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 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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:RestructuredLeaseSubleaseIncome" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOC0xLTEtMS03NjkxMA_be53ac5f-b868-4b62-bdc3-72bb5a40ec59">&#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:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:RestructuredLeaseSubleaseIncome" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOC0zLTEtMS03NjkxMA_82189a33-9236-4178-8fa9-c36d513561be">&#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:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:RestructuredLeaseSubleaseIncome" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOC01LTEtMS03NjkxMA_a761d8d2-18fa-4b37-beea-be8dd3bab8bd">&#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:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:RestructuredLeaseSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOC03LTEtMS03NjkxMA_e4b4ca6d-cb85-418f-ab89-f2446f41cd95">136</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 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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOS0xLTEtMS03NjkxMA_00292312-04c8-4f82-99da-aaf892d1793d">&#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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOS0zLTEtMS03NjkxMA_169cbcde-e082-40a6-8a4c-6b8e25e4ecca">&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOS01LTEtMS03NjkxMA_464aba67-9869-4a0f-aa64-6f7a68577f96">&#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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOS03LTEtMS03NjkxMA_917f9530-aedb-495b-be53-2e3db2ba3f4c">109</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 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="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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTAtMS0xLTEtNzY5MTA_c4463338-44ac-473a-a154-ab499f368ddf">&#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;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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTAtMy0xLTEtNzY5MTA_e85b791b-9f47-44c9-916f-11378ca6b5fb">&#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:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTAtNS0xLTEtNzY5MTA_47b35d38-dcbc-4d7e-858d-bc32a6c71191">&#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;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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" sign="-" name="efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTAtNy0xLTEtNzY5MTA_2481aa39-a339-4ba9-a2c2-b129bfee2f23">27</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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 style="height:11pt"><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;border-top:1pt solid #000000;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><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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;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 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTYtMS0xLTEtNzY5MTA_6317b7b3-508a-4145-88b7-5bc714409a86">74</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTYtMy0xLTEtNzY5MTA_d8fa09b2-af11-46be-bf43-da599c567c5e">114</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTYtNS0xLTEtNzY5MTA_4da4bc57-3ccb-4d8f-9383-18ef6549f179">208</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTYtNy0xLTEtNzY5MTA_bbdf47e9-ea8b-4993-9b45-dcd00121ee21">309</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><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></ix:continuation></div></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%">September&#160;30, 2022</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="i04067b26072445738c1b53cf2a563683"><ix:continuation id="ie61541b24b21458cb9e10760406eb483"><div style="margin-bottom:10pt"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA3NQ_53033194-b0a5-4eac-8301-8e99761754d4" escape="true"><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 September&#160;30, 2022 and December&#160;31, 2021 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:72.924%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.362%"></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:11.363%"></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%">September 30, 2022</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, 2021</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMi0xLTEtMS03NjkxMA_fc4e5a2e-7b82-4565-a20b-f33bcedb7a39">1,248</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMi0zLTEtMS03NjkxMA_1dd27b9f-7ba7-4b61-8259-b2c3a9911bc5">292</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 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 #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 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 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfNi0xLTEtMS03NjkxMA_0f376205-21b2-4326-8544-4d35a342e984">1,271</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:OperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfNi0zLTEtMS03NjkxMA_ce52ac46-a377-4b47-8636-c7eb53b750b8">351</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 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 #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: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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="efoi:FinanceLeaseRightOfUseAssetGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTEtMS0xLTEtNzY5MTA_36885a76-1869-4324-b021-07e7c02f99c4">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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="efoi:FinanceLeaseRightOfUseAssetGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTEtMy0xLTEtNzY5MTA_c654a143-0896-46a1-adec-085ee93e2e8d">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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTItMS0xLTEtNzY5MTA_ad638118-2079-46a2-9224-ffb4d434d806">13</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTItMy0xLTEtNzY5MTA_5a86a335-cbf8-4483-8091-c04f726f5721">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 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAsset" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTMtMS0xLTEtNzY5MTA_ddf6595b-6342-41cb-99a3-54803ecaa487">&#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:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTMtMy0xLTEtNzY5MTA_873e7a2a-5b0c-444e-9e92-3d8fffdec0df">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></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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:FinanceLeaseLiability" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTUtMS0xLTEtNzY5MTA_33592e7c-6c00-4f64-a500-2ff66f08a39c">&#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:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTUtMy0xLTEtNzY5MTA_21870ff4-1c3c-40f8-886f-f6d0481b3bd2">1</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:FinanceLeaseLiability" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTYtMS0xLTEtNzY5MTA_0345201c-2e9d-4309-b673-7b629bb46bcd">&#8212;</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTYtMy0xLTEtNzY5MTA_34a28fa5-5384-490a-9129-24d974f8e817">1</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></ix:nonNumeric></div><div style="margin-bottom:10pt"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA4MQ_0262b2f3-a358-481c-951c-5e24f7cb7618" escape="true"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA4MQ_55685a7e-9b3f-4d94-8c1b-2f9b078c4d25" escape="true"><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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:86.437%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:11.363%"></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></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="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%">October 2022&#160;to September 2023</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfMS0yLTEtMS03NjkxMA_d07f65d0-8044-4ca2-a160-4f115f1b1150">384</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></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%">October 2023 to September 2024</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfMi0yLTEtMS03NjkxMA_da6fe676-805e-42ce-9dfd-12351f649b5b">381</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></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%">October 2024 to September 2025</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfMy0yLTEtMS03NjkxMA_3edf17cf-22e5-4566-955d-11e168f09a9c">383</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></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%">October 2025 to September 2026</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfNC0yLTEtMS03NjkxMA_2737cd12-6a86-4fb4-9a83-6137d65cc2f0">389</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></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%">October 2026 to September 2027</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfNS0yLTEtMS03NjkxMA_72cb95b8-93bb-476e-80e5-2d55482ffa90">295</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></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: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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfNy0yLTEtMS03NjkxMA_21e8f369-0fd8-4b46-9281-4d9db46264a4">1,832</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="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%">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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfOC0yLTEtMS03NjkxMA_8eb3281b-6bcc-4aa2-9e72-a53638db26eb">561</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></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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfOS0yLTEtMS03NjkxMA_2c630916-d2b0-46b7-9a7b-63f55a84968a">1,271</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></ix:nonNumeric></ix:nonNumeric></div><div style="margin-bottom:10pt"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDExNA_26393497-98e2-4d9a-afc3-c5ddcb84d6bb" escape="true"><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 and nine months ended September&#160;30, 2022 and 2021, was as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:50.851%"></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.400%"></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.400%"></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.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.466%"></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 September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended September 30,</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%">2022</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%">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%">2022</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%">2021</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: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="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="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><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 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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNC0xLTEtMS03NjkxMA_3e67de05-e039-4cb9-87e4-9dd4c8d9936e">86</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNC0zLTEtMS03NjkxMA_3ac67155-9584-4ce4-8904-8b6d027d443a">161</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNC01LTEtMS03NjkxMA_3f011e94-c88e-4c3c-b632-cf6c594588ee">326</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNC03LTEtMS03NjkxMA_7e043c3e-696b-497f-b2e5-b0a50347c933">421</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="efoi:RestructuredLeasesOperatingLeasePayments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNS0xLTEtMS03NjkxMA_58ad2391-77f5-40ef-910f-60aa5c6558a4">&#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 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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:RestructuredLeasesOperatingLeasePayments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNS0zLTEtMS03NjkxMA_f03025ed-47c2-4596-854e-2f90734fe0f4">&#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 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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="efoi:RestructuredLeasesOperatingLeasePayments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNS01LTEtMS03NjkxMA_5d3510b1-360a-4748-9ff1-30fd7d4a90f5">&#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 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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="efoi:RestructuredLeasesOperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNS03LTEtMS03NjkxMA_0f70b87f-6e1d-455a-9377-bffedd7f30ed">35</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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNi0xLTEtMS03NjkxMA_5ae5bfea-13ba-4264-bc46-2d7219bbc4b1">&#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 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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNi0zLTEtMS03NjkxMA_b7f9af60-8f3c-4cc1-a1a1-3d1154594934">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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNi01LTEtMS03NjkxMA_4c85a743-dab0-481d-a806-84b5d937251a">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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNi03LTEtMS03NjkxMA_d8f20926-6440-4f6f-b917-053a4cbe9fa2">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:nonNumeric></div></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%">22</span></div></div></div><div id="i3e35699d61d94f84beb74724f5f81a53_58"></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%">September&#160;30, 2022</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:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:DebtDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfOTE2Mw_47206cea-0174-4748-a5ac-f5cedd0086f2" continuedAt="i26cf1de1fd82404297720b24d6824f93" escape="true">DEBT</ix:nonNumeric></span></div><ix:continuation id="i26cf1de1fd82404297720b24d6824f93" continuedAt="if7c3bc38b2c24e7e867b92caa923043e"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 11, 2020, we entered into <ix:nonFraction unitRef="creditfacility" contextRef="i9446277efb414c7394ebb1b0c8aebd3d_I20200811" decimals="INF" name="efoi:DebtInstrumentNumberOfCreditFacilities" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzI_eeccba92-64ed-47cb-864b-2464dd281198">two</ix:nonFraction> debt financing arrangements (together, the &#8220;Credit Facilities&#8221;) that allow for expanded borrowing capacity at a lower blended borrowing cost. 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="i18ff291df7b8496cb9875868c6794628_I20200811" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTg0_1434f5cc-d427-461b-8b16-4b89ba2288f7">3.0</ix:nonFraction> million, which amount was subsequently increased to $<ix:nonFraction unitRef="usd" contextRef="ica765d7e1dd64880aa3b5af97188883b_I20210420" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjMx_89fd63b6-8ccf-4520-a3f4-e3e0bf87156d">3.5</ix:nonFraction> 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="i18ff291df7b8496cb9875868c6794628_I20200811" decimals="INF" name="efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzc1_28d5a9ec-ce67-4a11-86f5-967121abb657">75</ix:nonFraction>% of inventory costs or <ix:nonFraction unitRef="number" contextRef="i18ff291df7b8496cb9875868c6794628_I20200811" decimals="INF" name="efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODAw_506fa03d-4918-403c-acbd-14e32f7c46a3">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="i18ff291df7b8496cb9875868c6794628_I20200811" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTA2Mw_1434f5cc-d427-461b-8b16-4b89ba2288f7">3.0</ix:nonFraction> million to $<ix:nonFraction unitRef="usd" contextRef="ica765d7e1dd64880aa3b5af97188883b_I20210420" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTA2OQ_89fd63b6-8ccf-4520-a3f4-e3e0bf87156d">3.5</ix:nonFraction> million, subject to the borrowing base as set forth in the Inventory Loan Agreement. The outstanding indebtedness under the Inventory Facility accrues at an annual rate equal to the greater of (i) <ix:nonFraction unitRef="number" contextRef="i18ff291df7b8496cb9875868c6794628_I20200811" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTI2MQ_bea4d09f-a9fb-4565-adae-093019bb5949">5.75</ix:nonFraction>% and (ii) <ix:nonFraction unitRef="number" contextRef="if71eac1a49294bdc9b5803cead4065ae_I20200811" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTI3Mw_40dc8aea-667b-40d0-a8f0-6c2e43c412d0">4.00</ix:nonFraction>% plus the three-month LIBOR rate (<ix:nonFraction unitRef="number" contextRef="i3c82664ebcef4ec8bf8b99764b232564_I20220930" decimals="4" name="efoi:DebtInstrumentBaseRateVariable" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTMwOQ_adf67f4e-d525-4432-b69d-03b54d90085d">3.07</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="ic8af432b0fc54d44a9d407badbc5a3cd_I20211231" decimals="4" name="efoi:DebtInstrumentBaseRateVariable" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTMxNg_6cdd9f10-0d78-4db1-8805-5ad02b09ed39">0.21</ix:nonFraction>% at September&#160;30, 2022 and December&#160;31, 2021, respectively) and is also subject to a service fee of <ix:nonFraction unitRef="number" contextRef="i10b7d00133c949799bb2b40563bb4c8f_D20200811-20200811" decimals="INF" name="efoi:LineOfCreditFacilityMonthlyFacilityFeePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTM4Nw_aa721e55-9a15-488c-9ead-75e763901508">1</ix:nonFraction>% per month. The annualized interest rate at September&#160;30, 2022 and December&#160;31, 2021, which includes interest fees, the annual facility fee, bank fees and other miscellaneous lender fees, was <ix:nonFraction unitRef="number" contextRef="i971c9edf22194ca1a8067ef5d3d289ff_I20220930" decimals="3" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTU1MA_75a38ef8-beda-44d5-a74f-d3a7ccc10715">23.4</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i0ecf8623aa0841ef9793311037e6ac63_I20211231" decimals="3" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTU1Nw_f069084c-d762-48e4-9fb2-84d2babf2e64">22.4</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="i10b7d00133c949799bb2b40563bb4c8f_D20200811-20200811" decimals="INF" name="efoi:LineOfCreditFacilityMonthlyFacilityFee" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTY4MQ_00be0245-14f5-436c-908f-6769ef5d0205">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. 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 term was automatically extended for <ix:nonNumeric contextRef="i0a615a216f2a4c009ef7875759edf4c6_D20220811-20220811" name="us-gaap:LineOfCreditFacilityExpirationPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMjkyMw_dedbeb07-a9b9-4dea-8a99-c9ceea79cf81">one year</ix:nonNumeric> on August 11, 2022, and now matures on August 11, 2023, subject to early termination upon  demand by the IF lender with <ix:nonNumeric contextRef="i0a615a216f2a4c009ef7875759edf4c6_D20220811-20220811" name="efoi:LineOfCreditFacilityTerminationNoticePeriod" format="ixt-sec:durday" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMjk1Mg_ae1ae344-0cdb-497f-80e9-2f9f7247c0b5">90</ix:nonNumeric> days&#8217; notice and otherwise in accordance with the terms of the Inventory Loan Agreement. The annual facility fee of $<ix:nonFraction unitRef="usd" contextRef="ie762edb4f9d24e66a3ffb1b02b4080e5_D20220901-20220930" decimals="INF" name="efoi:LineOfCreditFacilityAnnualFacilityFee" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODMwMDIz_bea53d85-535a-469c-a8e6-4b2f42cea433">70</ix:nonFraction>&#160;thousand was paid during September of 2022 upon renewal. During the third quarter of 2022, as a result of a reduction in borrowing base following an updated inventory appraisal, the IF Lender consented to the company reducing its excess borrowings over an 8-week transition period in accordance with an agreed over-allowance schedule. The term is automatically extended in successive one (<ix:nonNumeric contextRef="ie762edb4f9d24e66a3ffb1b02b4080e5_D20220901-20220930" name="us-gaap:LineOfCreditFacilityExpirationPeriod" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMzY5MA_d541aa2f-2b9f-436e-82c3-a8242775e9a4">1</ix:nonNumeric>) year increments unless terminated by either party in accordance with the Inventory Loan Agreement.</span></div><div style="margin-bottom:10pt"><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="i196ba82f2e6240a8b6c413dfcc04dd31_I20200811" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMjc5MQ_99af6ffb-f550-4af2-95ed-7b9a4a46905c">2.5</ix:nonFraction> million and (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="i196ba82f2e6240a8b6c413dfcc04dd31_I20200811" decimals="INF" name="efoi:LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMjkyNQ_e00bbd77-046e-47d4-84a9-3ef872ce1bba">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 (<ix:nonFraction unitRef="number" contextRef="id3d5f742cace4efb8dfae66add4b2ac1_I20220930" decimals="4" name="efoi:DebtInstrumentBaseRateVariable" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzE5Nw_0b7635f5-241e-4bb9-a9e3-4822e0c1b3c4">6.25</ix:nonFraction>% at September&#160;30, 2022 and <ix:nonFraction unitRef="number" contextRef="ibb51bc029bfa4e51af056061a860e167_I20211231" decimals="4" name="efoi:DebtInstrumentBaseRateVariable" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzIxMA_f509d3d1-5de6-4ef4-af00-c7baa1cea6e8">3.25</ix:nonFraction>% at December 31, 2021) plus (ii) <ix:nonFraction unitRef="number" contextRef="i196ba82f2e6240a8b6c413dfcc04dd31_I20200811" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzI0NQ_4e83cd09-e321-4096-94c2-d5d5eaa09a9f">2</ix:nonFraction>%. At September&#160;30, 2022 and December&#160;31, 2021, the annualized interest rate, which includes interest fees and the annual facility fee, was <ix:nonFraction unitRef="number" contextRef="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930" decimals="3" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzM1NQ_0c6cca3c-bc97-4696-a9c6-1535125b62c8">9.4</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i905894c4d5bc4eda86e1b7978f996e3f_I20211231" decimals="3" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzM2Mg_7adb3a93-cb61-403b-9ef7-9cc658525437">8.0</ix:nonFraction>%, respectively. The annualized interest rate on the collateral management fee was <ix:nonFraction unitRef="number" contextRef="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930" decimals="3" name="efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzQ0Ng_77d647c9-1de8-4288-b774-6d127682aac9"><ix:nonFraction unitRef="number" contextRef="i905894c4d5bc4eda86e1b7978f996e3f_I20211231" decimals="3" name="efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzQ0Ng_99c4ff4d-17df-4ad8-ae28-d8fe5eb1d84d">6.0</ix:nonFraction></ix:nonFraction>% at both September&#160;30, 2022 and December&#160;31, 2021. The Receivables Facility is also 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. A $<ix:nonFraction unitRef="usd" contextRef="i53563dc83c6742ab84eaea9a54e206f0_D20200811-20200811" decimals="INF" name="efoi:LineOfCreditFacilityMonthlyFacilityFee" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzY4NA_9449a0de-900e-4066-9e69-cd1a19df3fa6">25</ix:nonFraction> thousand, or <ix:nonFraction unitRef="number" contextRef="i53563dc83c6742ab84eaea9a54e206f0_D20200811-20200811" decimals="INF" name="efoi:LineOfCreditFacilityMonthlyFacilityFeePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzY5MQ_32e7691f-8dca-4afe-9df1-b8e08f241d8e">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 term was automatically extended for <ix:nonNumeric contextRef="i23f3a31d94194ab0b7d658e82442a131_D20220811-20220811" name="us-gaap:LineOfCreditFacilityExpirationPeriod" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMjkyNA_98262822-7f5c-4a0e-a204-99083b897442">one year</ix:nonNumeric> on August 11, 2022 and now matures on August 11, 2023, subject to early termination by either party in accordance with the terms of the Receivables Loan Agreement including by optional prepayment of the Receivables Facility along with an early termination fee, provided that the term is automatically extended in successive one (<ix:nonNumeric contextRef="ic3a263d6a4e54941b0cae626cdaf3842_D20220901-20220930" name="us-gaap:LineOfCreditFacilityExpirationPeriod" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMzY5OA_9452da0a-83f5-44f4-b984-db74dbe8bc77">1</ix:nonNumeric>) year increments unless terminated by either party in accordance with the Receivables Loan Agreement. The annual facility fee of $<ix:nonFraction unitRef="usd" contextRef="ic3a263d6a4e54941b0cae626cdaf3842_D20220901-20220930" decimals="INF" name="efoi:LineOfCreditFacilityAnnualFacilityFee" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODMwNDMx_68312f84-41ac-4270-8072-3be9034e2edb">25</ix:nonFraction>&#160;thousand was accrued for during September of 2022 upon renewal.</span></div><div style="margin-bottom:10pt"><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="i971c9edf22194ca1a8067ef5d3d289ff_I20220930" decimals="-5" name="us-gaap:LinesOfCreditCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDI0Mw_03f0ea05-690e-47f5-92c3-73ea78e0cf07">1.6</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i0ecf8623aa0841ef9793311037e6ac63_I20211231" decimals="-5" name="us-gaap:LinesOfCreditCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODI5MjE0_dab4d080-111d-494b-a4a9-27b17aeccc0b">1.2</ix:nonFraction> million at September&#160;30, 2022 and December&#160;31, 2021, respectively. Borrowings under the Receivables Facility were $<ix:nonFraction unitRef="usd" contextRef="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930" decimals="-5" name="us-gaap:LinesOfCreditCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDMxMg_b38a3cb0-13d7-44ff-9cb8-734ad9bc20b8">0.4</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i905894c4d5bc4eda86e1b7978f996e3f_I20211231" decimals="-5" name="us-gaap:LinesOfCreditCurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDMxOQ_d1347a74-c103-4b6a-997e-e1ff396ce720">1.0</ix:nonFraction> million at September&#160;30, 2022 and December&#160;31, 2021, respectively. These Credit Facilities are recorded in the Condensed Consolidated Balance Sheets as of September&#160;30, 2022 and December&#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="i971c9edf22194ca1a8067ef5d3d289ff_I20220930" decimals="-3" name="us-gaap:UnamortizedDebtIssuanceExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDU4NA_3a985cb2-1272-4ec8-92f1-ffb5e7e2bed9">64</ix:nonFraction> thousand and $<ix:nonFraction unitRef="usd" contextRef="i0ecf8623aa0841ef9793311037e6ac63_I20211231" decimals="-3" name="us-gaap:UnamortizedDebtIssuanceExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDU5MQ_9d712316-965f-4092-8ca4-0244996b9cd5">84</ix:nonFraction> thousand for the Inventory Facility and $<ix:nonFraction unitRef="usd" contextRef="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930" decimals="-3" name="us-gaap:UnamortizedDebtIssuanceExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDYyNQ_2a7f87ad-4af2-4fca-b4f7-5b7f2b42e798">21</ix:nonFraction> thousand and $<ix:nonFraction unitRef="usd" contextRef="i905894c4d5bc4eda86e1b7978f996e3f_I20211231" decimals="-3" name="us-gaap:UnamortizedDebtIssuanceExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDYzMg_9b60710b-8cf0-4d7b-ad65-1ecabdb6ffb8">24</ix:nonFraction> thousand for the Receivables Facility as of September&#160;30, 2022 and December&#160;31, 2021, respectively.</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%">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%">September&#160;30, 2022</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="if7c3bc38b2c24e7e867b92caa923043e" continuedAt="i2a389a2be5194bd39e32e1876479bb17"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Promissory Note Payable</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September&#160;16, 2022, we entered into a short-term unsecured Promissory Note (the &#8220;2022 Promissory Note&#8221;) with Mei-Yun (Gina) Huang in the original principal amount of $<ix:nonFraction unitRef="usd" contextRef="i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916" decimals="-5" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODMwMzU2_5a0b118b-e0b0-4899-ad14-eccd414d3a3f">0.5</ix:nonFraction> million. Ms. Huang is a member of the Company&#8217;s board of directors. The total liability for the 2022 Promissory Note was $<ix:nonFraction unitRef="usd" contextRef="ie76c4408e5e7447794eacfc4da73a57d_I20220930" decimals="-5" name="us-gaap:DueToRelatedPartiesCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODI3NDY4_ba3f7ec2-ffc7-4791-b534-114ed270c0f0">0.5</ix:nonFraction> million at September&#160;30, 2022. Please refer to Note 12, &#8220;Related Party Transaction&#8221; for further detail.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Streeterville Notes</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">2022 Note</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April&#160;21, 2022, we entered into a note purchase agreement (the &#8220;2022 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="if6e668f6124e450d84a74981dedfb0ee_I20220421" decimals="-5" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDk4OA_c04e4f06-3ad3-4d0e-8a66-79d7374e9373">2.0</ix:nonFraction> million (the &#8220;2022 Streeterville Note&#8221;). The 2022 Streeterville Note was issued with an original issue discount of $<ix:nonFraction unitRef="usd" contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTA5OA_12bf3124-a045-4c02-83e6-b6cf46fec119">215</ix:nonFraction> thousand and Streeterville paid a purchase price of approximately $<ix:nonFraction unitRef="usd" contextRef="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421" decimals="-5" name="us-gaap:ProceedsFromIssuanceOfDebt" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTE1OA_58a2c2a6-1ecf-4457-82c6-3122377f53d1">1.8</ix:nonFraction> million for the 2022 Streeterville Note, from which the Company paid $<ix:nonFraction unitRef="usd" contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421" decimals="-3" name="us-gaap:DeferredFinanceCostsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTIyMg_36602119-c761-4844-8fd7-1ceb014832c9">15</ix:nonFraction> thousand to Streeterville for Streeterville&#8217;s transaction expenses.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2022 Streeterville Note has a maturity date of April&#160;21, 2024, and accrues interest at <ix:nonFraction unitRef="number" contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421" decimals="2" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTM2Mw_d0698719-214c-4511-b44b-a6700ab06500">8</ix:nonFraction>% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the 2022 Streeterville Note at a premium, which is <ix:nonFraction unitRef="number" contextRef="i389bf4726fa24bae9f309a337b67ce6e_D20220421-20220421" decimals="2" name="efoi:DebtInstrumentPrepaymentPremiumPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTUyNw_521bf3a9-ab88-4398-a3d2-35ec32ffd575">5</ix:nonFraction>% during the first six months and <ix:nonFraction unitRef="number" contextRef="i2d71d179ac9d45ee8f2360098e53dba3_D20220421-20220421" decimals="3" name="efoi:DebtInstrumentPrepaymentPremiumPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTU2Mg_08da230e-435b-4f2a-9c33-9c6d5592d840">7.5</ix:nonFraction>% thereafter. Prepayments at the reduced rate in the first six months are limited to <ix:nonFraction unitRef="number" contextRef="i389bf4726fa24bae9f309a337b67ce6e_D20220421-20220421" decimals="2" name="efoi:DebtPrepaymentMaximumPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTY0OA_28fe9aa5-7ab0-4691-97f4-847c1854d9a5">50</ix:nonFraction>% of the outstanding balance. Beginning on December 1, 2022, Streeterville may require the Company to redeem up to $<ix:nonFraction unitRef="usd" contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421" decimals="-3" name="efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTc2NA_3f68a8c2-af1e-4058-8548-7857b8b5020f">225</ix:nonFraction> thousand of the 2022 Streeterville Note in any calendar month. The Company has the right on <ix:nonFraction unitRef="creditfacility" contextRef="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421" decimals="INF" name="efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTg1MA_7ee7f87f-9e08-4c78-87d0-38cbb2841e6b">five</ix:nonFraction> occasions, but not during more than three consecutive months, 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 2022 Streeterville Note by <ix:nonFraction unitRef="number" contextRef="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421" decimals="3" name="efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjE1Ng_72175b6f-534e-4918-8715-5c9d5b44cb1a">1.5</ix:nonFraction>%.</span></div><div style="margin-bottom:10pt"><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 2022 Streeterville Note, net of discount and financing fees, was $<ix:nonFraction unitRef="usd" contextRef="i414b414730cb486699f40f17b197d20f_I20220930" decimals="-5" name="us-gaap:DebtInstrumentCarryingAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjI1Mw_85f4f0c3-0c25-4a8c-84ce-0311a75bb774">1.9</ix:nonFraction> million at September&#160;30, 2022. Unamortized loan discount and debt issuance costs for the 2022 Streeterville Note were $<ix:nonFraction unitRef="usd" contextRef="i414b414730cb486699f40f17b197d20f_I20220930" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjM1MA_005eab0f-7750-44e4-9369-7d474f823693">183</ix:nonFraction> thousand at September&#160;30, 2022.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the event our common stock is delisted from Nasdaq, the amount outstanding under the 2022 Streeterville Note will automatically increase by <ix:nonFraction unitRef="number" contextRef="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421" decimals="2" name="efoi:DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjUwMw_dedbab8f-23de-42e6-a690-c8abdaaa1ca4">15</ix:nonFraction>% as of the date of such delisting.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">2021 Note</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April&#160;27, 2021, we entered into a note purchase agreement with Streeterville pursuant to which we sold and issued to Streeterville a promissory note in the principal amount of approximately $<ix:nonFraction unitRef="usd" contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427" decimals="-5" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjczMQ_239c13f0-5250-4c4d-95ad-a59aa35cebe0">1.7</ix:nonFraction> million (the &#8220;2021 Streeterville Note&#8221;). The 2021 Streeterville Note was issued with an original issue discount of $<ix:nonFraction unitRef="usd" contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjg0MQ_851f0aa7-e922-43c1-83b1-37832ffcc006">194</ix:nonFraction> thousand and Streeterville paid a purchase price of $<ix:nonFraction unitRef="usd" contextRef="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427" decimals="-5" name="us-gaap:ProceedsFromIssuanceOfDebt" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjg4Nw_5b590c4a-9414-4a4c-9d77-6d33f50433c5">1.5</ix:nonFraction> million for the 2021 Streeterville Note, after deduction of $<ix:nonFraction unitRef="usd" contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427" decimals="-3" name="us-gaap:DeferredFinanceCostsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjk0Mg_1cc573df-0989-4ed6-a8e0-ebc90ff4c2a3">15</ix:nonFraction> thousand of Streeterville&#8217;s transaction expenses.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2021 Streeterville Note has a maturity date of April&#160;27, 2023, and accrues interest at <ix:nonFraction unitRef="number" contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427" decimals="2" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzA2NQ_e7a0c568-7855-403b-9ad4-cb0fa11b3d2b">8</ix:nonFraction>% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the 2021 Streeterville Note at a premium, which is <ix:nonFraction unitRef="number" contextRef="i2e938b483e9c44d8a2997c541f085160_D20210427-20210427" decimals="2" name="efoi:DebtInstrumentPrepaymentPremiumPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzIyOQ_4274e24d-cd3c-4c01-97f3-b44f8414a7ca">5</ix:nonFraction>% during the first three months and <ix:nonFraction unitRef="number" contextRef="i86c7dafd35b7400bae6e5f62e5db0929_D20210427-20210427" decimals="2" name="efoi:DebtInstrumentPrepaymentPremiumPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzI2Ng_1c25824a-3763-42e4-8a8e-55ba918ff02b">10</ix:nonFraction>% thereafter. Prepayments at the reduced rate in the first three months are limited to <ix:nonFraction unitRef="number" contextRef="i2e938b483e9c44d8a2997c541f085160_D20210427-20210427" decimals="2" name="efoi:DebtPrepaymentMaximumPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzM1NA_b2bcd1b1-d71e-4d52-a0d6-a40cdb8018ca">50</ix:nonFraction>% of the outstanding balance. Beginning on November 1, 2021, Streeterville may require the Company to redeem up to $<ix:nonFraction unitRef="usd" contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427" decimals="-3" name="efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzQ3MA_3bc418b1-38b5-4eb4-aaed-a1680ecc6e07">205</ix:nonFraction> thousand of the 2021 Streeterville Note in any calendar month. The Company has the right on <ix:nonFraction unitRef="creditfacility" contextRef="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427" decimals="INF" name="efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" format="ixt-sec:numwordsen" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzU1Ng_4cee06ec-6364-4f92-89fb-11ace1259c4d">three</ix:nonFraction> occasions to defer all redemptions that Streeterville could otherwise require the Company to make during any calendar month, and Streeterville agreed to accept a fourth redemption deferral on the same terms during the third quarter of 2022. Each exercise of this deferral right by the Company will increase the amount outstanding under the 2021 Streeterville Note by <ix:nonFraction unitRef="number" contextRef="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427" decimals="3" name="efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzgxMA_3683374c-200d-4153-bc33-7cc5d59adeea">1.5</ix:nonFraction>%. The Company exercised this right twice during the fourth quarter of 2021, once during the second quarter of 2022 and once during the third quarter of 2022. The Company and Streeterville have agreed to exchange common stock for the required redemption in October 2022, totaling $<ix:nonFraction unitRef="usd" contextRef="i498ed019b5194c86b2cc36ba153b0b61_D20221001-20221031" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODMwNDI0_2f7b1cad-116c-40ee-88ac-6ba9215631d8">205</ix:nonFraction> thousand converted to equity.</span></div><div style="margin-bottom:10pt"><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 2021 Streeterville Note, net of discount and financing fees, was $<ix:nonFraction unitRef="usd" contextRef="i81c56b06f30049639c85bc9c0500b505_I20220930" decimals="-5" name="us-gaap:DebtInstrumentCarryingAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODAyNA_8b0ede11-4355-4632-8a27-cd50e36aa3f0">0.4</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="if84f49ab63ca4d8ab1bcf8d266e47b60_I20211231" decimals="-5" name="us-gaap:DebtInstrumentCarryingAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODAzMQ_d0e63b3a-1065-4736-b0de-c54c26d4d43b">1.7</ix:nonFraction> million at September&#160;30, 2022 and December&#160;31, 2021, respectively. Unamortized loan discount and debt issuance costs for the 2021 Streeterville Note were $<ix:nonFraction unitRef="usd" contextRef="i81c56b06f30049639c85bc9c0500b505_I20220930" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODE0OQ_d736c04b-a4d8-4d43-b117-bbfc93d5f1bf">61</ix:nonFraction> thousand and $<ix:nonFraction unitRef="usd" contextRef="if84f49ab63ca4d8ab1bcf8d266e47b60_I20211231" decimals="-3" name="us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODE1Ng_70c12cd4-61e6-4bb8-8728-722cff06e736">140</ix:nonFraction> thousand at September&#160;30, 2022 and December&#160;31, 2021, respectively.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the event our common stock is delisted from Nasdaq, the amount outstanding under the 2021 Streeterville Note will automatically increase by <ix:nonFraction unitRef="number" contextRef="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427" decimals="2" name="efoi:DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODMzMA_45f1a494-ed53-4691-b1af-3dafcee87d71">15</ix:nonFraction>% as of the date of such delisting.</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%">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%">September&#160;30, 2022</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="i2a389a2be5194bd39e32e1876479bb17"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PPP Loan</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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="i66532045d3ec4a78a77591cbe026cc94_D20200417-20200417" decimals="-3" name="us-gaap:ProceedsFromLoanOriginations1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODQ5MQ_6b899c37-f870-4bdb-9f4c-c6ba7f23ff26">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="i93d30f8a964643aab7ca91a6bfd8ee01_I20200417" decimals="2" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODc1Mw_9f663872-76eb-40e2-a4fa-e7f765a31a28">1</ix:nonFraction>% per annum. 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 (&#8220;SBA&#8221;) on February 11, 2021. The $<ix:nonFraction unitRef="usd" contextRef="iea8d7ac65a5c4beabc4e0669316eaf21_D20210101-20210930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfOTAzOA_fba48fa5-07e4-40d8-8252-66851770d4be">801</ix:nonFraction> thousand forgiveness income was recorded as other income in the Condensed Consolidated Statements of Operations during the nine months ended September 30, 2021.</span></div></ix:continuation><div id="i3e35699d61d94f84beb74724f5f81a53_61"></div><div style="margin-bottom:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:IncomeTaxDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfMTk2MQ_f6641989-2b0d-441f-bd2f-518b21a2e21f" continuedAt="i9e7a10ad062f4aeb999319c7f3723bd2" escape="true">INCOME TAXES</ix:nonNumeric></span></div><ix:continuation id="i9e7a10ad062f4aeb999319c7f3723bd2"><div style="margin-bottom:10pt;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 and nine months ended September&#160;30, 2022 and 2021, 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="margin-bottom:10pt;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 September&#160;30, 2022 and December&#160;31, 2021, we had a full valuation allowance recorded against our deferred tax assets.</span></div><div style="margin-bottom:10pt;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="margin-bottom:10pt;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, 2021, we had a net operating loss carry-forward of approximately $<ix:nonFraction unitRef="usd" contextRef="i617257e7faeb4beca533ed983b2f58d4_I20211231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfODMz_4ac0e64c-3257-4a3b-a035-6755edd4a881">125.4</ix:nonFraction> million for federal income tax purposes ($<ix:nonFraction unitRef="usd" contextRef="i0323c9f2e709499388c55edfd47a2d07_I20211231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfODY5_042ed2f5-80e5-4494-b414-78fef6d0050c">77.2</ix:nonFraction> million for state and local income tax purposes). However, due to changes in our capital structure, approximately $<ix:nonFraction unitRef="usd" contextRef="i617257e7faeb4beca533ed983b2f58d4_I20211231" decimals="-5" name="efoi:DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfOTc4_40881f86-4e4d-4d74-aa1c-cb2eaed2de81">71.0</ix:nonFraction> million of the $<ix:nonFraction unitRef="usd" contextRef="i617257e7faeb4beca533ed983b2f58d4_I20211231" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfOTg4_4ac0e64c-3257-4a3b-a035-6755edd4a881">125.4</ix:nonFraction> million is available to offset future taxable income after the application of the limitations found under Section 382 of the Internal Revenue Code of 1986, as amended. 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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-5" name="us-gaap:OperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfMTM5MQ_ec47454d-b568-4727-91c2-afe66eb747f6">9.6</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i665a74c29f70404086fd8174e737d9ae_I20201231" decimals="-5" name="us-gaap:OperatingLossCarryforwards" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfMTM5OA_e2b43443-2dab-419f-b4bb-d603f7e0574b">7.1</ix:nonFraction> million in federal net operating losses generated in 2021 and 2020, 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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-5" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfMTYwNQ_dd2e9cb4-731f-4cd9-804b-3e4cb714625a">37.5</ix:nonFraction> million will begin to expire in 2023 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 11, &#8220;Income Taxes,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2021 Annual Report.</span></div></ix:continuation><div id="i3e35699d61d94f84beb74724f5f81a53_64"></div><div style="margin-bottom:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTEwOTU_2bed0daa-b7e9-4a33-8167-38daf9f47a5b" continuedAt="i40316fbca2f94bde90edca297b1a6a97" escape="true">STOCKHOLDERS&#8217; EQUITY</ix:nonNumeric></span></div><ix:continuation id="i40316fbca2f94bde90edca297b1a6a97" continuedAt="i57a42dbbe2c34e71b05a20c26b5b021a"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">June 2022 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2022, we completed the June 2022 Private Placement with certain institutional investors for the sale of <ix:nonFraction unitRef="shares" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="INF" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTc0_1b73b551-ee21-4391-a220-60c9dcdc492b">1,313,462</ix:nonFraction> shares of our common stock at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ib6093e256b84497da804afffdc20ab61_I20220930" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjI3_f2f3d06c-77f8-44ac-a07b-913a16c1c076">1.30</ix:nonFraction> per share. We also sold to the same institutional investors (i) June 2022 Pre-Funded Warrants to purchase <ix:nonFraction unitRef="shares" contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzM2_b89bff43-350e-46b5-b4c5-c55a8fdea448">1,378,848</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzg2_377d8e46-f153-4e78-97d4-451669ca2b37">0.0001</ix:nonFraction> per share and (ii) warrants to purchase up to an aggregate of <ix:nonFraction unitRef="shares" contextRef="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDUx_88b7c47f-7261-4d0b-b92a-316bdada04f7">2,692,310</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTAx_a6593163-2265-45e7-9e16-e0a2d0199df4">1.30</ix:nonFraction> per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-3" name="efoi:PaymentsForPlacementAgentCommissions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjEw_c79454a2-c4cf-4493-8af7-6e99d723d138">252</ix:nonFraction>&#160;thousand, plus $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-3" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjE5_61f943b2-0447-42ee-9a1c-9307a5fff010">35</ix:nonFraction>&#160;thousand in expenses, and we also paid legal, accounting and other fees of $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-3" name="efoi:PaymentsForClearingFees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjg4_6910677c-2cb5-4e7d-a491-ee1050fb22c0">47</ix:nonFraction>&#160;thousand. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzE2_47d40fd3-dc07-4488-a36d-bfe9b4b0fa39">334</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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $<ix:nonFraction unitRef="usd" contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfOTQ4_762dce1a-5291-44b4-b753-9a4eaf730ea5">3.2</ix:nonFraction> million. We determined the exercise price of the June 2022 Pre-Funded Warrants to be nominal and, as such, have considered the <ix:nonFraction unitRef="shares" contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTA3MA_b89bff43-350e-46b5-b4c5-c55a8fdea448">1,378,848</ix:nonFraction> shares underlying them to be outstanding effective June 7, 2022, for purposes of calculating net loss per share. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In July 2022, all of the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="ib6093e256b84497da804afffdc20ab61_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTQ5NzU1ODI0OTkz_40cdfaba-422c-498a-aab7-0b706e51f755">2,692,310</ix:nonFraction> shares remained outstanding, with a weighted average exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ib6093e256b84497da804afffdc20ab61_I20220930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTMxOA_b6935464-1186-409c-952b-1752cf63faa9">1.30</ix:nonFraction> per share.  The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $<ix:nonFraction unitRef="usd" contextRef="icbe2c1b605284d9ea336fc4b0c5b94b6_D20220701-20220930" decimals="-5" name="efoi:EstimatedProceedsFromIssuanceOfWarrants" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTUwOQ_2ddf4016-2e7e-4d2d-abad-7d18c0a64551">3.5</ix:nonFraction> million in the aggregate.</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%">September&#160;30, 2022</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="i57a42dbbe2c34e71b05a20c26b5b021a" continuedAt="id73540e2a65c498799ed4d58737bbcce"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 2021 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we completed the December 2021 Private Placement with certain institutional investors for the sale of <ix:nonFraction unitRef="shares" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="INF" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTY4Mg_09c512ba-a810-4675-a0b2-5bf3014aa789">1,193,185</ix:nonFraction> shares of our common stock at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i9ce48cbac2a74e9d94e19ade81ea2ba2_I20211231" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTczNQ_bf802b5e-45e1-44b6-81f3-5a2a0f2e4dea">3.52</ix:nonFraction> per share. We also sold to the same institutional investors (i) December 2021 Pre-Funded Warrants to purchase <ix:nonFraction unitRef="shares" contextRef="i8ddadf8727d94cc6b7723121484c1cd6_I20211231" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTg0OA_0ddbe389-3fa1-49c1-9383-b371a1ea1c57">85,228</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i8ddadf8727d94cc6b7723121484c1cd6_I20211231" decimals="INF" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTg5OA_9e931271-66cf-4634-a9ac-ffb14ad3e5b4">0.0001</ix:nonFraction> per share and (ii) warrants to purchase up to an aggregate of <ix:nonFraction unitRef="shares" contextRef="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTk2Mw_f9957170-a9fc-456e-b307-eea0d6499822">1,278,413</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjAxMw_26146e18-3f69-4552-81fb-4ca7bf24d801">3.52</ix:nonFraction> per share. In connection with the December 2021 Private Placement, we paid the placement agent commission of $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-3" name="efoi:PaymentsForPlacementAgentCommissions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjEyNQ_865e87c5-0b7a-4891-ade2-b1da598d50d9">360</ix:nonFraction>&#160;thousand plus $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-3" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjEzMw_9ae57c64-ab1b-4835-82f4-7fb2258a8a7b">42</ix:nonFraction>&#160;thousand in expenses and we also paid legal, accounting and other fees of $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-3" name="efoi:PaymentsForClearingFees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjIwMQ_0919f815-bead-4e24-969c-1ad66bd6aa4f">97</ix:nonFraction>&#160;thousand. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjIyOQ_d2a22f4d-2ad3-4595-840d-e71e12aacd13">499</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, 2021. Net proceeds from the December 2021 Private Placement were approximately $<ix:nonFraction unitRef="usd" contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjQ1OQ_399e7735-23f7-42e1-a08d-dea0c05ff5d0">4.0</ix:nonFraction> million. We determined the exercise price of the December 2021 Pre-Funded Warrants to be nominal and, as such, considered the <ix:nonFraction unitRef="shares" contextRef="i748bb2380fea4959930dec8b4d178b77_D20211216-20211216" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjU4MA_40409803-3509-4b5a-b12e-70afca67f8dc">85,228</ix:nonFraction> shares underlying them to be outstanding effective December 16, 2021, for purposes of calculating net loss per share.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> In January 2022, all of the December 2021 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="i767ac6894c76456c8094aa95c522cc82_I20220930" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjg0MQ_0cb42817-2ec3-4463-bcd7-17242d5658d4">1,278,413</ix:nonFraction> shares remained outstanding, with an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i767ac6894c76456c8094aa95c522cc82_I20220930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjg5OQ_df84d91c-df5b-43d8-b11d-00e84ada4010">3.52</ix:nonFraction> per share. The December 2021 Warrants expire on December&#160;16, 2026. The exercise of the remaining December 2021 Warrants outstanding could provide us with cash proceeds of up to $<ix:nonFraction unitRef="usd" contextRef="i81f0616158c84d3fb1b6440205bf4b1f_D20220701-20220930" decimals="-5" name="efoi:EstimatedProceedsFromIssuanceOfWarrants" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzA2NA_c0a60090-72f0-4b4c-a7a4-fd138da6f828">4.5</ix:nonFraction> million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">June 2021 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2021, we completed a registered direct offering of <ix:nonFraction unitRef="shares" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="INF" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzE3MA_281337d8-6943-4320-a915-e22fd24ddc16">990,100</ix:nonFraction> shares of our common stock to certain institutional investors, at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i0faf6b8b75e64d60b8cca4f20ea1033d_I20210630" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzI1OQ_871e5d86-a65f-410b-95ad-81ba34f6d481">5.05</ix:nonFraction> per share. We paid the placement agent commissions of $<ix:nonFraction unitRef="usd" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="-3" name="efoi:PaymentsForPlacementAgentCommissions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzMxNg_be69806d-0c0a-4b6e-8964-20111804e632">400</ix:nonFraction> thousand, plus $<ix:nonFraction unitRef="usd" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="-3" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzMyNQ_c6eb6022-2291-4d59-9d0d-a7fb60236e37">51</ix:nonFraction> thousand in expenses, in connection with the June 2021 Equity Offering and we also paid legal and other fees of $<ix:nonFraction unitRef="usd" contextRef="ie0406c176cd64530aa241398cd71c792_D20210601-20210630" decimals="-3" name="efoi:PaymentsForClearingFees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzQzMQ_12331ab7-6452-4c27-b6a3-117a829e95b2">18</ix:nonFraction> thousand. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="i12d643b8880e4367bc65f29dd3283f8b_D20220101-20220331" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzQ1OQ_b60c8499-82a5-4cdd-8d1f-1b8f9c9150e9">469</ix:nonFraction> 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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $<ix:nonFraction unitRef="usd" contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzY4OQ_657825aa-f5f7-422b-9072-c09e424174a9">4.5</ix:nonFraction> million.</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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="if941b58136404dd4b535ca1bc12bedb8_D20200116-20200116" decimals="-5" name="efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDAwMg_5eb2a97e-92e9-4e36-b762-fbf9b5e8240d">1.8</ix:nonFraction> million) were converted at a conversion price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i7343d6d5c7c048638231d8662dbd503d_I20200116" decimals="2" name="us-gaap:DebtInstrumentConvertibleConversionPrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDA0Ng_656dcbe4-9723-4400-9f3e-215fc9ce19ec">0.67</ix:nonFraction> per share into an aggregate of <ix:nonFraction unitRef="shares" contextRef="if941b58136404dd4b535ca1bc12bedb8_D20200116-20200116" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDA4MA_97627fad-42c6-40eb-9121-98184d75b746">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 31, 2020, <ix:nonFraction unitRef="shares" contextRef="iefd5eddb0814490fbd704f2c74f89146_D20210101-20210331" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDI1Mg_0921675d-989e-4d92-82ce-5d36cf3261ed">111,548</ix:nonFraction> shares of the Series A Preferred Stock were converted into <ix:nonFraction unitRef="shares" contextRef="i7219bd37e0e6448194c0a85983fa741e_D20210101-20210331" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDMxNA_4a42e189-a4fb-46c0-869d-dab74a2c34a8">22,310</ix:nonFraction> shares of common stock. During the year ended December 31, 2021, <ix:nonFraction unitRef="shares" contextRef="i89f85dc38f7d456ba4d0a27b9e8c44d5_D20220101-20220331" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDM4Mg_f5c902b6-de67-4bb5-9e58-af9a69fbac9d">1,721,023</ix:nonFraction> shares of Series A Preferred Stock were converted into <ix:nonFraction unitRef="shares" contextRef="ib271d367f3b04cd99dca3bb663f64887_D20220101-20220331" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDQ0MA_6827c163-b0e9-43e3-b429-dd17244f6aa8">344,205</ix:nonFraction> shares of common stock. The Series A Preferred Stock that was converted in 2021 was held by a Schedule 13D ownership group (under Section 13(d)(3) of the Securities Exchange Act of 1934, as amended, and Rule 13d-5 promulgated thereunder) that includes Fusion Park LLC (&#8220;Fusion Park&#8221;) and 5 Elements Global Fund L.P. (controlled affiliates of James Tu, the Company's former Executive Chairman and Chief Executive Officer), as well as Brilliant Start Enterprise Inc. (&#8220;Brilliant Start&#8221;) and Jag International Ltd. (controlled affiliates of Gina Huang, a member of the Company's board of directors). Upon conversion of their respective shares of Series A Preferred Stock, Fusion Park and Brilliant Start received <ix:nonFraction unitRef="shares" contextRef="iceb133a95ec34a90beb603793c0c1a16_I20211231" decimals="INF" name="us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTE1Mw_fe9186a5-edb8-4470-ac54-91ac6f3fa0b3">184,851</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="i09164e6fe4e24b1aad0d2a0cb0b3971e_I20211231" decimals="INF" name="us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTE2MA_b6f8672c-668c-440b-b90d-1bcd30ad5f72">159,354</ix:nonFraction> shares, respectively, of the Company&#8217;s common stock. </span></div><div style="margin-bottom:10pt"><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="i3a1985fdb73c40eab7774a091c39b414_I20190329" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTM5Mw_7c9a3649-55a4-4dc6-9cad-d3ff14c66b0e">2,000,000</ix:nonFraction> shares of the Company&#8217;s preferred stock, par value $<ix:nonFraction unitRef="usdPerShare" contextRef="i3a1985fdb73c40eab7774a091c39b414_I20190329" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTQ0Nw_1adaffff-dfad-46af-8939-f07d50a9e89f">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="i0f75433f2ab04afc9e0f49ca98b865a5_I20200115" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTcxNQ_d94a6e78-1a8f-4ff5-84aa-26e91f97f62c">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="i8db87dbfef0c4d6285dee961db52fe03_I20200115" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTkwMA_febdb054-5fec-4c8f-9004-a5333cf5da62">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></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%">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%">September&#160;30, 2022</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="id73540e2a65c498799ed4d58737bbcce" continuedAt="iaea960a41d5947398369653d13a8e461"><div style="margin-bottom:10pt"><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="i91458235d2144bf784b39565efa69ba2_D20200116-20200116" decimals="4" name="efoi:PercentageOfSeriesAPreferredStockEligibleToVote" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjQ5MQ_503915d2-1187-4363-a484-dacf83bf569e">11.07</ix:nonFraction>% of the number of shares of common stock into which such share of Series A Preferred Stock is convertible.</span></div><div style="margin-bottom:10pt"><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="i7343d6d5c7c048638231d8662dbd503d_I20200116" decimals="2" name="us-gaap:DebtInstrumentConvertibleConversionPrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjY3Ng_656dcbe4-9723-4400-9f3e-215fc9ce19ec">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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 2020 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Issuance of Common Stock and Warrants</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2020, we completed a registered direct offering for the sale of <ix:nonFraction unitRef="shares" contextRef="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131" decimals="INF" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzY3OA_c5ee9f9a-080d-4220-9d83-6034254ddf74">688,360</ix:nonFraction> shares of our common stock to certain institutional investors, at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i75c44893e522482d9da770d544c0738f_I20200131" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzc2Nw_860ce0fc-d93e-4b97-8677-feff7e904b7c">3.37</ix:nonFraction> per share. We also sold, to the same institutional investors, the Investor Warrants to purchase up to <ix:nonFraction unitRef="shares" contextRef="i75c44893e522482d9da770d544c0738f_I20200131" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzg3Mg_86174388-5a91-4250-a5ab-93e3f82c76a2">688,360</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="if6df7ef067004660ab3ca010df7407c3_I20200131" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzkyMg_243ba911-df0c-4f6a-b851-d20b71969036">3.37</ix:nonFraction> per share in a concurrent private placement for a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzk5Mw_d78276ba-7620-4b31-903b-119cd8171c42">0.625</ix:nonFraction> per warrant. We paid the placement agent commissions of $<ix:nonFraction unitRef="usd" contextRef="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131" decimals="-3" name="efoi:PaymentsForPlacementAgentCommissions" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODA1Mg_6ca12d01-f32f-48ef-add0-7c98891fec22">193</ix:nonFraction>&#160;thousand, plus $<ix:nonFraction unitRef="usd" contextRef="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131" decimals="-3" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODA2MQ_94254baf-2b4b-4a8e-8f6a-8c82d5bad441">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="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131" decimals="-3" name="efoi:PaymentsForClearingFees" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODIxNw_5b844684-2866-41d0-8dc4-f3d80a31e381">231</ix:nonFraction>&#160;thousand related to the offering. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="ib0bd1c8c0ccc4c3c9f0db9404c231979_D20220101-20220331" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODI2OQ_6b3b2466-eb04-4515-b406-47538fe61fee">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 31, 2021. In addition, we issued warrants to the placement agent to purchase up to <ix:nonFraction unitRef="shares" contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131" decimals="INF" name="us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODUxNA_a6715f94-7ef1-4a49-b855-d472e77652f3">48,185</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODU2NA_5ad13216-d38d-48b1-b735-52f8e023e59d">4.99</ix:nonFraction> per share. Net proceeds to us from the sale of common stock and January 2020 Warrants were approximately $<ix:nonFraction unitRef="usd" contextRef="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131" decimals="-5" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODY3Mg_10d102c0-3dee-4761-9ff2-a0ec02819b3e">2.3</ix:nonFraction> million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">January 2020 Warrants issued to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="i4a27914cc205482c8bd58c311de25f66_D20220701-20220930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODczMw_88815a4a-e987-4324-a476-0e6d064dbd5d">229,414</ix:nonFraction> shares remain outstanding at September&#160;30, 2022 with a weighted average exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i11a6b7ac29a64570a16688c65c0b2098_I20220930" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODgxMA_7d70fb58-ee6c-4225-8845-d103b9987540">3.67</ix:nonFraction> per share. The exercise of warrants could provide us with cash proceeds of up to $<ix:nonFraction unitRef="usd" contextRef="ife2256486c774b86ada936065734d99d_D20220101-20220930" decimals="-3" name="efoi:EstimatedProceedsFromIssuanceOfWarrants" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODg5NA_85637264-8790-4427-901c-adc65b6bbeda">0.8</ix:nonFraction> million in the aggregate if all warrants are exercised. During the nine months ended September 30, 2022, <ix:nonFraction unitRef="shares" contextRef="ife2256486c774b86ada936065734d99d_D20220101-20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODk2MA_64823742-5811-489e-860b-f6930b3bf724">no</ix:nonFraction> January 2020 Warrants were exercised. During the nine months ended September 30, 2021, <ix:nonFraction unitRef="shares" contextRef="i06883d1c8c934bbb8b0580de82e8da76_D20210101-20210930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfOTAxNQ_fe91fa20-fbd4-4c81-a511-d2dde7f22ee0">156,446</ix:nonFraction> warrants were exercised resulting in total proceeds of $<ix:nonFraction unitRef="usd" contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:ProceedsFromWarrantExercises" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfOTA3Mw_9fff75e3-f16d-4211-ad76-cd5ee38586ca">527</ix:nonFraction>&#160;thousand.</span></div><div style="margin-bottom:10pt"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTEwNzQ_1b3c996a-5007-4848-81c6-59e4178c74ac" escape="true"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022 and 2021, we had the following outstanding January 2020 warrants to purchase shares of common stock:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:31.482%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.116%"></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.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.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.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: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%">As of September&#160;30, 2022</span></div></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;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%">As of September&#160;30, 2021</span></div></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="padding:0 1pt"></td><td colspan="9" 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%">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="ia8c1cf4af256477a9f3312f157d59e00_D20220701-20220930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMi0xLTEtMS03NjkxMA_0fa58b71-d4c6-4c2f-bc10-fd22247e1dcf">187,734</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: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="i7b877e19c76246d8bd05cd62af67b8a9_D20210701-20210930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMi0zLTEtMS03NjkxMA_f0d69400-8949-4965-8cf9-34dfc55ae932">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="i75c44893e522482d9da770d544c0738f_I20200131" decimals="4" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMi01LTEtMS03NjkxMA_64c17a30-ad3a-440e-b9f8-a676ed3b9581">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="i442abdaea1d04ae9bdd98e8d7dece558_D20220701-20220930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMy0xLTEtMS03NjkxMA_c1e043f7-04b4-45c1-8a9a-a56e5f45c35f">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: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="i39bebab66ddb43608243763645f6ca3d_D20210701-20210930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMy0zLTEtMS03NjkxMA_76a1ebcc-7710-481d-8fee-ad89bc2f325e">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="ieaa31e67c19d4a1abf7787241d1751d0_I20200131" decimals="4" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMy01LTEtMS03NjkxMC90ZXh0cmVnaW9uOjBjMmQzMjg2YWFiNDRjMmM4NzE1NjY1Mzc0MjY0OTEzXzQ_3d8d81e1-c06d-42b1-955d-c48e135b2c2f">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="i4a27914cc205482c8bd58c311de25f66_D20220701-20220930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfNC0xLTEtMS03NjkxMA_2a0a7fac-c1d5-4da5-8b7e-04a89e497723">229,414</ix:nonFraction></span></td><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="ic8492b48531b4b3cabdd6d3da9335a79_D20210701-20210930" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssued" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfNC0zLTEtMS03NjkxMA_22b35609-735d-49ac-8aec-a14bc30d28ff">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></ix:nonNumeric></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Warrant Classification</span></div><div style="margin-bottom:10pt"><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 condensed 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></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%">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%">September&#160;30, 2022</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="iaea960a41d5947398369653d13a8e461" continuedAt="i99daab1e294c4cc8a9e3569ca6c67e38"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Stock-based compensation</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTExMDE_f2982854-28d8-417a-bd46-b7748456d1ec" escape="true"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.200%"></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.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.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.767%"></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/>September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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: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="ia5a502486aba455ebed2e3223c3362a0_D20220701-20220930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMi0xLTEtMS03NjkxMA_2dbe632f-1f20-46d3-8a73-776de93ad00c">&#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: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="i23d7b0e9696d4a529a7dcd257570a4fb_D20210701-20210930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMi0zLTEtMS03NjkxMA_721770d3-fe74-42cd-89f7-54831cdf63f9">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="ideff6cde4d7b407386a6407f451b309d_D20220101-20220930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMi01LTEtMS03NjkxMA_bb247e52-e39a-4830-a13e-e3731c5ececc">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="id89dc8d72db14b00ac47698037f60b6f_D20210101-20210930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMi03LTEtMS03NjkxMA_c07deabd-7ffa-48f1-b499-b09bebf3398e">7</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 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="i3b21fc5eda514b8badcc6afdeebf4f09_D20220701-20220930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMy0xLTEtMS03NjkxMA_11891ad6-cf41-4a1c-97d8-494b55f2bb72">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:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib6ec7d497d754f3499b69d7e7f71ba80_D20210701-20210930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMy0zLTEtMS03NjkxMA_e4fe5258-ca04-41bc-9014-516317c76db9">2</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="idf9b91958ac74d2ba2d17c5d5094693f_D20220101-20220930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMy01LTEtMS03NjkxMA_f5cd3485-dc4b-4b06-9d6c-2e0812948940">16</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="if76c9109bee6465395764fb4affa8ad3_D20210101-20210930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMy03LTEtMS03NjkxMA_c5476d4f-45e2-44d8-b032-a096418817b1">10</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: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="ibac8b1f026a84b7b9acd8bc716fb5ba6_D20220701-20220930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNC0xLTEtMS03NjkxMA_dd7d8cbb-4b31-4e1d-ae80-ad94bc764506">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="i38d603fde1ae40219a02697631cdc470_D20210701-20210930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNC0zLTEtMS03NjkxMA_c5df7c48-95bb-4063-8245-6abea2d04d16">35</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="id5d44e14724b473083ad6434de1ccffc_D20220101-20220930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNC01LTEtMS03NjkxMA_b66762b7-99a5-49c4-99f3-735b44ae357c">97</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="ia7aa25b3113e426998f8d7cacbbbd50c_D20210101-20210930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNC03LTEtMS03NjkxMA_df6701d0-b22b-417a-a9a1-0e469931a8df">370</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: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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNS0xLTEtMS03NjkxMA_98aaa766-5b52-422e-8d93-a34fb7909c82">17</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="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNS0zLTEtMS03NjkxMA_44415b07-c4d8-40fe-9920-4653f4be8c51">39</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNS01LTEtMS03NjkxMA_68dcccb4-1141-43f3-a6e5-142d36871210">115</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="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNS03LTEtMS03NjkxMA_5198ae8f-be8a-4053-b394-f55daf753bf3">387</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></table></ix:nonNumeric></div><div style="margin-bottom:10pt"><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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-5" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTAyNjk_2d7425f3-00fd-4951-97cd-2f39206ac53a">0.2</ix:nonFraction> million at September&#160;30, 2022, compared to $<ix:nonFraction unitRef="usd" contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930" decimals="-5" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTAyOTE_5f5ffd40-3d16-4a05-b9f4-00e42aadeb4d">0.3</ix:nonFraction> million at September&#160;30, 2021. 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 September&#160;30, 2022 is expected to be recognized is approximately <ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTA1MTU_1f2033e1-30bc-4b73-bf77-89f17d273da3">2.5</ix:nonNumeric> years.</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTExMDI_0cc6c8c9-5020-458a-ab0b-19ce141bd732" continuedAt="iffd46e98582d449780a042f05b1fda4e" 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><ix:continuation id="iffd46e98582d449780a042f05b1fda4e"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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%">Nine months ended<br/>September 30,</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%">2022</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%">2021</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="i3907598e54964033bfdff8d85a946082_D20220101-20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfMi0xLTEtMS03NjkxMA_73a2a400-44e2-4b5a-981c-3fb97e47d919">0.77</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="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfMi0zLTEtMS03NjkxMA_5e9094a5-2692-40e2-a40b-373fda3121dc">4.18</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="i1b2deadd99aa4fffa0a17c415fc8f198_I20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfMy0xLTEtMS03NjkxMA_01260e1a-0faf-4c12-8503-e6966a65302e">0.95</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="i6903be08e4a8455297987e3aa2b285cf_I20210930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfMy0zLTEtMS03NjkxMA_fd916e38-33c9-4265-bd6c-5137c810c8f5">5.39</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="i3907598e54964033bfdff8d85a946082_D20220101-20220930" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNC0xLTEtMS03NjkxMA_b417ef05-677e-477c-b9fa-9c14fa14d67c">6.1</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="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNC0zLTEtMS03NjkxMA_4cb59eb3-2529-4b01-8da2-ba680fbfbf91">6.2</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="i3907598e54964033bfdff8d85a946082_D20220101-20220930" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNS0xLTEtMS03NjkxMA_a4eac489-82d4-48e2-815e-c44b70cbf00c">3.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="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNS0zLTEtMS03NjkxMA_9aec8aee-e825-4519-9e53-6de34d1f721f">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></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="i3907598e54964033bfdff8d85a946082_D20220101-20220930" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNi0xLTEtMS03NjkxMA_9279b189-8d2b-4101-b74b-7bcb4cd839cc">104.0</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="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNi0zLTEtMS03NjkxMA_5cd600a9-7fdc-4d9e-8e7f-b791ece14582">96.5</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="i3907598e54964033bfdff8d85a946082_D20220101-20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNy0xLTEtMS03NjkxMA_a7772cb0-0429-4ef4-b2ed-9c53fe317138">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="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNy0zLTEtMS03NjkxMA_0aba6772-b379-46c5-9f3a-e3be5abc0f6a">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="3" style="display:none"></td></tr></table></ix:continuation></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%">September&#160;30, 2022</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="i99daab1e294c4cc8a9e3569ca6c67e38"><div style="margin-bottom:10pt"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTEwODI_7d3cf764-be28-4c47-bf9a-876451eee442" escape="true"><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 nine months ended September 30, 2022 is presented as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMS0xLTEtMS03NjkxMA_0b79d7c8-a2f7-41b9-bd6f-f03ba6d88a6e">267,109</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="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMS0zLTEtMS03NjkxMA_03b9ed86-8eb7-486b-bea1-8a6146aac340">3.46</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMi0xLTEtMS03NjkxMA_f118ddac-81f7-4534-8eda-de03dba34233">226,820</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMi0zLTEtMS03NjkxMA_de2c13cc-ad60-4038-81d4-6824826f4b53">0.95</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%">Exercised</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMy0xLTEtMS03NjkxMA_ede0e124-2ae8-45bd-a4d1-3f500f5d7f1c">250</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMy0zLTEtMS03NjkxMA_17286530-8712-43ee-8bd4-da63417162b8">1.45</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%">Canceled/forfeited</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNC0xLTEtMS03NjkxMA_0fcb1fc7-07f1-4486-aa83-84abf3a47f04">135,447</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNC0zLTEtMS03NjkxMA_1059ce61-896e-4319-b14f-09a7ae25778c">3.03</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;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 September 30, 2022</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:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNi0xLTEtMS03NjkxMA_8df2a879-4576-485a-aee0-cbceabf3fef6">358,064</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 #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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNi0zLTEtMS03NjkxMA_079e08b8-f457-4e7c-9f73-d5833e2187a0">2.03</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 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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNi01LTEtMS03NjkxMA_ea8d0fb0-7b86-42b5-9b2d-0d37ed2a8d58">8.2</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 September 30, 2022</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfOC0xLTEtMS03NjkxMA_11aad14f-8492-4795-a980-826ed060ec89">291,379</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfOC0zLTEtMS03NjkxMA_2dd834ad-f9cb-4d78-9e59-54ba507112e3">2.21</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfOC01LTEtMS03NjkxMA_e9f60d4d-0eca-4d61-be29-11041971db92">7.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%">Exercisable at September 30, 2022</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMTAtMS0xLTEtNzY5MTA_87a74103-38bc-4365-97dd-cc911515c581">118,920</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="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMTAtMy0xLTEtNzY5MTA_d8ce9369-6dc7-4c7d-814a-866e05277a59">3.21</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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMTAtNS0xLTEtNzY5MTA_151560d9-b78a-4238-ad55-84a8f6d3f3da">5.6</ix:nonNumeric></span></td></tr><tr style="height:15pt"><td colspan="18" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></ix:nonNumeric></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTEwOTE_7b35d19c-6c3e-471d-8d04-3ded0e8dc499" escape="true"><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 nine months ended September 30, 2022 is presented as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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="ie4c9f0482b664da7bec8b76bf482f1c1_I20211231" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMS0xLTEtMS03NjkxMA_870c9fad-f1a9-429c-aa24-f86c527ea886">2,400</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="ie4c9f0482b664da7bec8b76bf482f1c1_I20211231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMS0zLTEtMS03NjkxMA_d67bc325-67f2-45c9-9bfc-276d883cb4d9">7.14</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="ia3b35a926924443c945b946003d4ba41_D20220101-20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMi0xLTEtMS03NjkxMA_4f722396-fe50-4dda-8f6b-8cc990ca4b85">40,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="ia3b35a926924443c945b946003d4ba41_D20220101-20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMi0zLTEtMS03NjkxMA_26bc29b5-43a0-47cd-8263-6d635d339e0a">1.40</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="ia3b35a926924443c945b946003d4ba41_D20220101-20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMy0xLTEtMS03NjkxMA_5247c41d-3232-4634-a5a0-86f98bc1eccb">40,800</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="ia3b35a926924443c945b946003d4ba41_D20220101-20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMy0zLTEtMS03NjkxMA_f5ab4a7c-9434-46ca-b5d1-48eb07ac215a">1.51</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 September 30, 2022</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="ib3fb6995edf04fadb00176f749207754_I20220930" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfNS0xLTEtMS03NjkxMA_930d6b55-7340-4ac4-873a-59a74b89e920">1,600</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="ib3fb6995edf04fadb00176f749207754_I20220930" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfNS0zLTEtMS03NjkxMA_04ea9769-8593-4ddd-b20a-ee10e57fd843">7.14</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="ia3b35a926924443c945b946003d4ba41_D20220101-20220930" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfNS01LTEtMS03NjkxMA_0f83eafa-de9c-4774-9eeb-7e59d4857f68">7.9</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="display:none"></td></tr></table></ix:nonNumeric></div></ix:continuation><div id="i3e35699d61d94f84beb74724f5f81a53_70"></div><div><span><br/></span></div><div style="margin-bottom:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183MC9mcmFnOjFmZjYzOGQzNGQ5YTQ0YTliMTQwZTQ3N2Y3YjU5NDk5L3RleHRyZWdpb246MWZmNjM4ZDM0ZDlhNDRhOWIxNDBlNDc3ZjdiNTk0OTlfMjEz_93f8b534-b7a6-4c88-8415-ad5bd0d2ec20" continuedAt="iea9e1f1bf55c4636be8d7ed4d6c8d0b6" escape="true">COMMITMENTS AND CONTINGENCIES</ix:nonNumeric></span></div><ix:continuation id="iea9e1f1bf55c4636be8d7ed4d6c8d0b6"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022, we had approximately $<ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-5" name="us-gaap:PurchaseObligation" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183MC9mcmFnOjFmZjYzOGQzNGQ5YTQ0YTliMTQwZTQ3N2Y3YjU5NDk5L3RleHRyZWdpb246MWZmNjM4ZDM0ZDlhNDRhOWIxNDBlNDc3ZjdiNTk0OTlfOTc_5c67983c-ab74-443b-a816-6a3a0f87c563">1.0</ix:nonFraction>&#160;million in outstanding purchase commitments for inventory, of which $<ix:nonFraction unitRef="usd" contextRef="id958e8a3a7f94c5db78db2d7543b0efa_D20221001-20221231" decimals="-5" name="us-gaap:LongTermPurchaseCommitmentAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183MC9mcmFnOjFmZjYzOGQzNGQ5YTQ0YTliMTQwZTQ3N2Y3YjU5NDk5L3RleHRyZWdpb246MWZmNjM4ZDM0ZDlhNDRhOWIxNDBlNDc3ZjdiNTk0OTlfNTQ5NzU1ODE0MTc3_74fde70e-33b0-44ee-8387-b13223bb2796">0.8</ix:nonFraction>&#160;million is expected to ship in the fourth quarter of 2022 and $<ix:nonFraction unitRef="usd" contextRef="ia031c454919a4e79b6e09138bcf7cda2_D20231001-20231231" decimals="-5" name="us-gaap:LongTermPurchaseCommitmentAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183MC9mcmFnOjFmZjYzOGQzNGQ5YTQ0YTliMTQwZTQ3N2Y3YjU5NDk5L3RleHRyZWdpb246MWZmNjM4ZDM0ZDlhNDRhOWIxNDBlNDc3ZjdiNTk0OTlfNTQ5NzU1ODE0MjAx_a471db13-57d4-4bb9-b76a-250459bea866">0.2</ix:nonFraction>&#160;million is expected to ship in the first quarter of 2023 and beyond.</span></div></ix:continuation><div id="i3e35699d61d94f84beb74724f5f81a53_73"></div><div style="margin-bottom:10pt;margin-top:10pt"><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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:OtherIncomeAndOtherExpenseDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfMjc2Mw_d19eb45e-9839-42b0-812c-e1033200ce61" continuedAt="iec332a35ac5945a7938c84641b058b50" escape="true">OTHER INCOME</ix:nonNumeric></span></div><ix:continuation id="iec332a35ac5945a7938c84641b058b50" continuedAt="i819d9c9d96044716be21c6674fba227c"><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Employee Retention Tax Credit</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The CARES Act, which was enacted on March 27, 2020, provides an ERTC that is a refundable tax credit against certain employer taxes. The ERTC was subsequently amended by the Taxpayer Certainty and Disaster Tax Relief Act of 2020, the Consolidated Appropriation Act of 2021, and the American Rescue Plan Act of 2021, all of which amended and extended the ERTC availability and guidelines under the CARES Act. Following these amendments, we and other businesses became retroactively eligible for the ERTC, and as a result of the foregoing legislation, are eligible to claim a refundable tax credit against the employer share of Social Security taxes equal to 70% of the qualified wages paid to employees between January 1, 2021 and September 30, 2021. Qualified wages are limited to $10,000 per employee per calendar quarter in 2021 for a maximum allowable ERTC per employee of $7,000 per calendar quarter in 2021. </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%">29</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%">September&#160;30, 2022</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="i819d9c9d96044716be21c6674fba227c" continuedAt="i5e7d53485b7f43d0b205b162909ff9a8"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For purposes of the amended ERTC, an eligible employer is defined as having experienced a significant (20% or more) decline in gross receipts during each of the first three 2021 calendar quarters when compared with the same quarter in 2019 or the immediately preceding quarter to the corresponding calendar quarter in 2019. The credit is taken against the Company&#8217;s share of Social Security Tax when the Company&#8217;s payroll provider files, or subsequently amends the applicable quarterly employer tax filings.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the amended guidelines, we are eligible to receive the ERTC for the second and third quarters of 2021. As part of the filing of our employer tax filings for the third quarter of 2021, we applied for and received a refund of $<ix:nonFraction unitRef="usd" contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930" decimals="-3" name="efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfODc5NjA5MzAyNTIyNg_e46de79a-343e-4991-a5dd-239dcb4c2ead">431</ix:nonFraction>&#160;thousand, and we amended our filing for the second quarter of 2021, for which we expect to receive an additional refund of approximately $<ix:nonFraction unitRef="usd" contextRef="i682c94a884c54808853513b639aaddba_I20220630" decimals="-3" name="efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfODc5NjA5MzAyNTI0MQ_36d8f645-f3d0-41de-87ca-63e07608b91e">445</ix:nonFraction>&#160;thousand. These amounts are recorded as other income in the Condensed Consolidated Statements of Operations during the quarter ended December&#160;31, 2021, and the $<ix:nonFraction unitRef="usd" contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930" decimals="-3" name="efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfODc5NjA5MzAyNTI1Ng_0e193f74-8d6f-40e3-acd4-0ee765af9767"><ix:nonFraction unitRef="usd" contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231" decimals="-3" name="efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfODc5NjA5MzAyNTI1Ng_56e93467-3adf-4ef1-9043-0e5f7ad57c5d">445</ix:nonFraction></ix:nonFraction>&#160;thousand expected receivable is included in prepaid and other current assets in the Condensed Consolidated Balance Sheet as of September&#160;30, 2022 and December&#160;31, 2021.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PPP Loan</span></div></ix:continuation><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i5e7d53485b7f43d0b205b162909ff9a8">On April&#160;17, 2020, the Company was granted a loan from KeyBank in the amount of approximately $<ix:nonFraction unitRef="usd" contextRef="i66532045d3ec4a78a77591cbe026cc94_D20200417-20200417" decimals="-3" name="us-gaap:ProceedsFromLoanOriginations1" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfMjIzNQ_6b899c37-f870-4bdb-9f4c-c6ba7f23ff26">795</ix:nonFraction>&#160;thousand, pursuant to the PPP under the CARES Act, 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="i93d30f8a964643aab7ca91a6bfd8ee01_I20200417" decimals="2" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfMjM5Mw_9f663872-76eb-40e2-a4fa-e7f765a31a28">1</ix:nonFraction>% per annum. 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 SBA on February 11, 2021. The $<ix:nonFraction unitRef="usd" contextRef="iea8d7ac65a5c4beabc4e0669316eaf21_D20210101-20210930" decimals="-3" name="efoi:GainLossOnForgivenessOfDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfMjY0NA_fba48fa5-07e4-40d8-8252-66851770d4be">801</ix:nonFraction> thousand forgiveness income was recorded as other income in the Condensed Consolidated Statements of Operations during the nine months ended September 30, 2021</ix:continuation>.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_1265"></div><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 12. <ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N18zODQ4MjkwNzAxNDMz_f9d20fab-0d58-4532-9237-9ac8204e585f" continuedAt="ic93aa64b8e0a4a0782ede603186b3664" escape="true">RELATED PARTY TRANSACTION</ix:nonNumeric></span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ic93aa64b8e0a4a0782ede603186b3664">On September&#160;16, 2022, we entered into the 2022 Promissory Note with Ms. Huang  in the original principal amount of $<ix:nonFraction unitRef="usd" contextRef="i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916" decimals="-5" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N181NDk3NTU4MTgzMDg_819fbd89-9dc3-4291-924c-e395c5e39321">0.5</ix:nonFraction> million. Ms. Huang is a member of the Company&#8217;s board of directors. The 2022 Promissory Note is an unsecured obligation and has a maturity date of June&#160;16, 2023, and accrues interest at <ix:nonFraction unitRef="number" contextRef="i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916" decimals="2" name="us-gaap:RelatedPartyTransactionRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N181NDk3NTU4MTY0NzQ_254158d1-43de-4226-90a3-7985027b85d3">8</ix:nonFraction>% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding in whole or in part at any time prior to the maturity date. Upon the occurrence of an event of default under the 2022 Promissory Note, Ms. Huang may, at her option, declare the amount outstanding under the Note immediately due and payable. After the occurrence of an event of default, Ms Huang may elect to have interest accrue on the 2022 Promissory Note at a rate per annum of <ix:nonFraction unitRef="number" contextRef="i2eabe6d2a37a422989c84893dd332210_D20230617-20230617" decimals="2" name="us-gaap:RelatedPartyTransactionRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N181NDk3NTU4MTgwOTE_2a213cd0-f0ad-494a-b63c-ae320db93215">10</ix:nonFraction>%, or such lesser rate as permitted under applicable law. The total liability for the 2022 Promissory Note was $<ix:nonFraction unitRef="usd" contextRef="ie76c4408e5e7447794eacfc4da73a57d_I20220930" decimals="-5" name="us-gaap:DueToRelatedPartiesCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N181NDk3NTU4MTU4OTM_ba3f7ec2-ffc7-4791-b534-114ed270c0f0">0.5</ix:nonFraction> million at September&#160;30, 2022</ix:continuation>. </span></div><div id="i3e35699d61d94f84beb74724f5f81a53_1276"></div><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 13. <ix:nonNumeric contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930" name="us-gaap:SubsequentEventsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MTQyNjcx_d995cb12-d9d3-4a8d-ad79-fa66a5cfe377" continuedAt="i7e2af020b3c840fd85842ca974e95a05" escape="true">SUBSEQUENT EVENTS</ix:nonNumeric></span></div><ix:continuation id="i7e2af020b3c840fd85842ca974e95a05" continuedAt="ie2fc86ed01f44c87be348103f2a2d58d"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Unsecured Notes Payable</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On November 9, 2022, the Company issued a short-term Promissory Note in favor of Mei-Yun (Gina) Huang in the original principal amount of $<ix:nonFraction unitRef="usd" contextRef="ia7a575e13a97477c95fcce5d364e94f4_D20221109-20221109" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MjYzMDk_0cc3a257-5dc0-4a51-bf5a-9e270b150b80">350</ix:nonFraction> thousand. Ms. Huang previously provided $<ix:nonFraction unitRef="usd" contextRef="i0f027af04d83467b80f12eee9555de10_D20220901-20220930" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MjYzMjM_49d09286-3882-4eba-ae08-43a682dea64b">450</ix:nonFraction> thousand of bridge financing in September 2022 on the substantially the same terms.  Ms. Huang is a member of the Company&#8217;s board of directors.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The promissory note has a maturity date of nine months from the date of issuance and bears interest at an annual rate of eight percent. The outstanding principal balance and all accrued interest thereon are due and payable at the maturity date. The Company may prepay the amounts outstanding under the note in whole or in part at any time prior to the maturity date.  Upon the occurrence of an event of default under the note, Ms. Huang may, at her option, declare the amount outstanding under the note immediately due and payable. After the occurrence of an event of default, Ms. Huang may elect to have interest accrue on the note at a rate per annum of ten percent, or such lesser rate as permitted under applicable law.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On November 4, 2022, the Company issued a short-term Promissory Note in favor of Jay Huang in the original principal amount of $<ix:nonFraction unitRef="usd" contextRef="icba1b582d7184316b754105405aecfd3_D20221104-20221104" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MjMyMDM_68b4b5bb-776c-402b-b357-a20b468d101b">250</ix:nonFraction> thousand (the &#8220;Huang Note&#8221;). In October of 2022, Mr. Huang also provided $<ix:nonFraction unitRef="usd" contextRef="ic107134d856e4cd68956b82d3af98975_D20221001-20221031" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MjMyMTY_fbb9c78a-387e-4a81-a5ca-21b3a9463ae2">50</ix:nonFraction> thousand of bridge financing on the substantially the same terms as the Huang Note.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Huang Note has a maturity date of nine months from the date of issuance and bears interest at an annual rate of eight percent. The outstanding principal balance and all accrued interest thereon are due and payable at the maturity date. The Company may prepay the amounts outstanding under the Huang Note in whole or in part at any time prior to the maturity date.  Upon the occurrence of an event of default under the Huang Note, Mr. Huang may, at his option, declare the amount outstanding under the Huang Note immediately due and payable. After the occurrence of an event of default, Mr. Huang </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%">30</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%">September&#160;30, 2022</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="ie2fc86ed01f44c87be348103f2a2d58d"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">may elect to have interest accrue on the Huang Note at a rate per annum of ten percent, or such lesser rate as permitted under applicable law.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Exchange Agreement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 10, 2022, we entered into an Exchange Agreement (the &#8220;Exchange Agreement&#8221;) with Streeterville, to whom we previously sold and issued the 2021 Streeterville Note.  Pursuant to the Exchange Agreement, the Company and Streeterville have agreed to (i) partition from the 2021 Streeterville Note a new Promissory Note (the &#8220;October Partitioned Note&#8221;) in the original principal amount of $<ix:nonFraction unitRef="usd" contextRef="ibf6599b235b243f6904e6a6ea6d49bc9_I20221010" decimals="-3" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MTkxNjY_73e45cf0-a340-4138-ae61-511c3a6ad9b1">205</ix:nonFraction> thousand (the &#8220;October Exchange Amount&#8221;), (ii) cause the outstanding balance of the 2021Streeterville Note to be reduced by an amount equal to the October Exchange Amount, and (iii) exchange (the &#8220;Exchange&#8221;) the Partitioned Note for <ix:nonFraction unitRef="shares" contextRef="ic18b07c002bb481c99be9c8a3e22ef20_D20221010-20221010" decimals="0" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV84Nzk2MDkzMDI2MDMy_66283db5-f975-404c-8ea2-5778bdc56f9a">385,918</ix:nonFraction> shares (the &#8220;October Exchange Shares&#8221;) of the Company&#8217;s common stock.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The October Exchange was each priced at-the-market under Nasdaq rules pursuant to one or more exemptions from the registration requirements of the Securities Act of 1933, as amended.  There are no gross proceeds to the Company in respect of the October Exchange, provided that the Exchange satisfied a redemption notice provided by Streeterville under the terms of the 2021 Streeterville Note, pursuant to which the Company otherwise would be required to redeem $<ix:nonFraction unitRef="usd" contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427" decimals="-3" name="efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MTc5MzM_3bc418b1-38b5-4eb4-aaed-a1680ecc6e07">205</ix:nonFraction> thousand of the 2021 Streeterville Note in cash, respectively.</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%">31</span></div></div></div><div id="i3e35699d61d94f84beb74724f5f81a53_79"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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, 2021 (&#8220;2021 Annual Report&#8221;).</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_82"></div><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Overview</span></div><div style="margin-bottom:10pt"><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 and controls systems. We develop, market and sell high quality light-emitting diode (&#8220;LED&#8221;) lighting and controls products in the commercial market and military maritime market (&#8220;MMM&#8221;), and expanded our offerings into the consumer market beginning in the fourth quarter of 2021. Our mission is to enable our customers to run their facilities, offices, homes and vessels with greater energy efficiency, productivity, and human health and wellness through advanced LED retrofit. Our goal is to be the human wellness lighting and LED lighting technology and market leader for the most demanding applications where performance, quality, value, 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-grade tubular LED (&#8220;TLED&#8221;) products, as well as other LED and lighting control products for commercial and consumer applications. After evaluating market demand and supply chain challenges for our ultraviolet-C light disinfection products, we have revised our marketing strategy to primarily focus on our MMM and commercial and industrial lighting and control products.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales decreased 29% for the nine months ended September 30, 2022 as compared to the nine months ended September 30, 2021, primarily driven by a 52% decrease in MMM sales year-over-year and a slight 3% decrease in sales of our commercial products. The sales cycles for the MMM is dependent on many factors, including the availability and prioritization 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. However, we reinvested in our MMM sales channel with a strategic hire in the second quarter of 2022 and continue to pursue these opportunities, though the sales cycles for what are frequently made-to-order products are longer than commercial offerings. In our commercial markets, while we are beginning to see an uptick in customer projects and purchase commitments, the sales cycles can range from several months to over one year and our financial results also reflect volatility from the continued fluctuations in the timing, pace and size of commercial projects due to, among other reasons, the long-term effects on our customers of the coronavirus (&#8220;COVID-19&#8221;) pandemic.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Operating losses increased by $0.9&#160;million, or 14%, in the first nine months of 2022 from the first nine months of 2021. The Company&#8217;s results reflect the challenges due to long and unpredictable sales cycles, delays in customer retrofit budgets and project starts, and supply chain issues, primarily related to supplier concentration and shipping costs exacerbated by the continuing effects of the COVID-19 pandemic. We have been challenged by continuing and intensifying aggressive price competition in the lighting industry, particularly in our retrofit market, as well as increased logistics expenses that are weighing on margins. 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 September&#160;30, 2022.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The COVID-19 pandemic in particular has, and may continue to have, a significant economic and business impact on us. We saw a slight improvement in commercial sales in the first half of 2022, following slowdowns in 2021 and 2020, as end customers in the healthcare, education, and commercial and industrial sectors delayed order placements in reaction to the impacts of the COVID-19 pandemic that caused our customers to suspend or postpone lighting retrofit projects due to budget and occupancy uncertainties. We remain cautious as our commercial sales reflect the volatility of large institutional end customers. Global supply chain and logistics challenges have further exacerbated slowdowns in customer projects, as well as impacted our margins, inventory availability and shipping strategies to respond to customer and supplier timelines.</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><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 in response to the pandemic. Global supply chain and logistics constraints are impacting our inventory purchasing strategy as we seek to manage both shortages of available components and longer lead times in obtaining components. Disruptions in global logistics networks are also impacting our lead times and ability to efficiently and cost-effectively transport products from our third-party suppliers to our facility. 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 long-term impact of the COVID-19 pandemic and stand ready to adjust our organizational structure, strategies, plans and processes to respond.</span></div><div style="margin-bottom:10pt"><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 of the COVID-19 pandemic to our business, results of operations, cash flows and financial position. Long-term impacts of the COVID-19 pandemic, as well as 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 will remain agile as an organization to respond to potential or continuing weakness in the macroeconomic environment and in the meantime expand sales channels and evaluate new consumer markets that we believe may provide additional growth opportunities.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">It is our belief that the momentum of the efforts undertaken in 2021, as described in our 2021 Annual Report, along with our continuing efforts to date in 2022, including the development and launch of new and innovative products such as our 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%">powerline controls platform, as well as our planned entry into the consumer markets with these new products, lowering of our fixed costs through improved lease arrangements and reduced headcount beginning in the second half of the year, and our plans to shift to more cost effective in-bound freight strategies, will over time result in improved sales and bottom-line performance for the Company. During the third quarter and into the fourth quarter of 2022, we have aggressively resized our organization and emphasized sales and operational execution, while also seeking lower cost, higher value opportunities in our supply chain.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We launched our patented EnFocus&#8482; powerline controls platform during the second quarter of 2020 and, despite the ongoing, significant delay and slowdown in our customers&#8217; lighting projects following the impacts of the COVID-19 pandemic, we continue to receive positive feedback from the market through project specifications that are beginning to convert to larger volume orders. 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 additional data cables or any wireless communication systems, through a relatively simple upgrade with EnFocus&#8482; switches and LED lamps. Our EnFocus&#8482; powerline controls offer a more secure, affordable and environmentally sustainable solution compared with replacing entire lighting fixtures and incorporating additional wired or wireless communication.</span></div><div style="margin-bottom:10pt;padding-left:2.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Throughout 2021 and 2022, our MMM business continued to face challenges resulting from the delayed availability of government funding and the timing and prioritization of U.S. Navy awards, with several anticipated projects facing repeated and ongoing delays. We continue to pursue opportunities from the U.S. Navy and the government sector to minimize such volatility, and reinvested in our MMM sales channel with a strategic hire in the second quarter of 2022. MMM sales cycles are longer than commercial sales, and frequently are for made-to-order products, so we believe the impacts of this reinvestment are still building. Previously in our MMM business, significant efforts undertaken to reduce costs in our product offerings have positioned us to be more competitive along with improved production efficiencies. Additionally, we are an approved supplier for the General Services Administration (&#8220;GSA&#8221;) and many of our products are now listed in the GSA website for all federal and military agencies to view and order our products, a channel we hope to further develop. While we continue to aggressively seek to increase sales of our commercial products, we are reinvesting in the MMM business as we believe it offers us continued sales opportunities, in addition to validating our product quality and strengthening our brand trust in the marketplace. However, due to product mix impacts resulting from the continued impact of the COVID-19 pandemic on commercial sales, our current financial results are in part driven by, and reflect volatility in, our MMM sales.</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 style="margin-bottom:10pt"><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%"> powerline controls, further leveraging our proprietary technology such as 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%">, as well as executing on our multi-channel sales strategy that targets key verticals, such as government, healthcare, eldercare, 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 that aim to serve both consumer and commercial markets. 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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At September&#160;30, 2022, we had $41 thousand in cash and a total of $4.8 million of debt, net of discounts and unamortized debt costs. Total debt, net of discounts and unamortized debt costs, at September&#160;30, 2022 included $1.6 million outstanding under our inventory financing facility (the &#8220;Inventory Facility&#8221;), $0.4 million outstanding under our receivables financing facility (the &#8220;Receivables Facility&#8221; and, together with the Inventory Facility, the &#8220;Credit Facilities&#8221;), $0.4 million outstanding on the 2021 Streeterville Note (as defined below), $1.9 million outstanding on the 2022 Streeterville Note (as defined below) and $0.5 million outstanding on the 2022 Promissory Note (as defined below). At September&#160;30, 2022, we had no additional availability under the Inventory Facility and $0.2 million under the Receivables Facility. During the third quarter of 2022, as a result of a reduction in borrowing base following an updated inventory appraisal, the IF Lender consented to the company reducing its excess borrowings over an 8-week transition period in accordance with an agreed over-allowance schedule. Previously, 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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In September 2022, we entered into a short-term unsecured Promissory Note (the &#8220;2022 Promissory Note&#8221;) with Mei-Yun (Gina) Huang in the original principal amount of $0.5 million. Ms. Huang is a member of the Company&#8217;s board of directors. The 2022 Promissory Note has a maturity date of June&#160;16, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding in whole or in part at any time prior to the maturity date. Upon the occurrence of an event of default under the 2022 Promissory Note, the Lender may, at its option, declare the amount outstanding under the 2022 Promissory Note immediately due and payable. After the occurrence of an event of default, the Lender may elect to have interest accrue on the 2022 Promissory Note at a rate per annum of 10%, or such lesser rate as permitted under applicable law.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2022, we completed a private placement (the &#8220;June 2022 Private Placement&#8221;) with certain institutional investors for the sale of 1,313,462 shares of our common stock at a purchase price of $1.30 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#8220;June 2022 Pre-Funded Warrants&#8221;) to purchase 1,378,848 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the June 2022 Pre-Funded Warrants, the &#8220;June 2022 Warrants&#8221;) to purchase up to an aggregate of 2,692,310 shares of common stock at an exercise price of $1.30 per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $252&#160;thousand, plus $35&#160;thousand in expenses, and we also paid legal, accounting and other fees of $47&#160;thousand. Total offering costs of $334&#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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $3.2 million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April&#160;21, 2022, we entered into a note purchase agreement (the &#8220;2022 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 $2.0 million (the &#8220;2022 Streeterville Note&#8221;). The 2022 Streeterville Note was issued with an original issue discount of $215 thousand and Streeterville paid a purchase price of $1.8 million for the 2022 Streeterville Note, after deduction of $15 thousand of Streeterville&#8217;s transaction expenses.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2022 Streeterville Note has a maturity date of April&#160;21, 2024, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the 2022 Streeterville Note at a premium, which is 5% during the first six months and 8% thereafter. Prepayments at the reduced rate in the first six months are limited to 50% of the outstanding balance. Beginning on December 1, 2022, Streeterville may require the Company to redeem up to $225 thousand of the 2022 Streeterville Note in any calendar month. The Company has the right on five occasions, but not during more than three consecutive months, to defer all redemptions that Streeterville could otherwise </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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 2022 Streeterville Note by 1.5%. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we completed a private placement (the &#8220;December 2021 Private Placement&#8221;) with certain institutional investors for the sale of 1,193,185 shares of our common stock at a purchase price of $3.52 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#8220;December 2021 Pre-Funded Warrants&#8221;) to purchase 85,228 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the December 2021 Pre-Funded Warrants, the &#8220;December 2021 Warrants&#8221;) to purchase up to an aggregate of 1,278,413 shares of common stock at an exercise price of $3.52 per share. In connection with the December 2021 Private Placement, we paid the placement agent commissions of $360&#160;thousand, plus $42&#160;thousand in expenses, and we also paid legal, accounting and other fees of $97&#160;thousand. Total offering costs of $499&#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, 2021. Net proceeds to us from the December 2021 Private Placement were approximately $4.0 million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2021, we completed a registered direct offering of 990,100 shares of our common stock to certain institutional investors, at a purchase price of $5.05 per share (the &#8220;June 2021 Equity Offering&#8221;). We paid the placement agent commissions of $400 thousand, plus $51 thousand in expenses, in connection with the June 2021 Equity Offering and we also paid legal and other fees of $18 thousand. Total offering costs of $469 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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $4.5 million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April&#160;27, 2021, we entered into a note purchase agreement (the &#8220;2021 Streeterville Note Purchase Agreement&#8221;) with Streeterville pursuant to which the Company sold and issued to Streeterville a promissory note in the principal amount of approximately $1.7 million (the &#8220;2021 Streeterville Note&#8221;). The 2021 Streeterville Note was issued with an original issue discount of $194 thousand and Streeterville paid a purchase price of $1.5 million for the 2021 Streeterville Note, after deduction of $15 thousand of Streeterville&#8217;s transaction expenses.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2021 Streeterville Note has a maturity date of April&#160;27, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the 2021 Streeterville Note at a premium, which is 5% during the first three months and 10% 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 months after the date of purchase, Streeterville may require the Company to redeem up to $205 thousand of the 2021 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, and Streeterville agreed to accept a fourth redemption deferral on the same terms during the third quarter of 2022. Each exercise of this deferral right by the Company will increase the amount outstanding under the 2021 Streeterville Note by 1.5%. The Company exercised this right twice during the fourth quarter of 2021, once during the second quarter of 2022, and once during the third quarter of 2022.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 10, 2022, we entered into an Exchange Agreement (the &#8220;Exchange Agreement&#8221;) with Streeterville, to whom we previously sold and issued the 2021 Streeterville Note.  Pursuant to the Exchange Agreement, the Company and Streeterville have agreed to (i) partition from the 2021 Streeterville Note a new Promissory Note (the &#8220;Partitioned Note&#8221;) in the original principal amount of $205 thousand (the &#8220;Exchange Amount&#8221;), (ii) cause the outstanding balance of the 2021 Streeterville Note to be reduced by an amount equal to the Exchange Amount, and (iii) exchange (the &#8220;Exchange&#8221;) the Partitioned Note for 385,918 shares (the &#8220;Exchange Shares&#8221;) of the Company&#8217;s common stock.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The October Exchange was priced at-the-market under the rules of The Nasdaq Stock Market (&#8220;Nasdaq&#8221;) pursuant to one or more exemptions from the registration requirements of the Securities Act.  There were no gross proceeds to the Company in respect of the October Exchange, provided that the Exchange satisfied a redemption notice provided by Streeterville under the terms of the 2021 Streeterville Note, pursuant to which the Company otherwise would be required to redeem $205 thousand of the 2021 Streeterville Note in cash, respectively.</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="i3e35699d61d94f84beb74724f5f81a53_85"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;margin-top:10pt"><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 style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.200%"></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.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.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.767%"></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/>September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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%">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="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="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></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%">109.2&#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%">79.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="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%">101.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="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%">79.8&#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%">Gross (loss) 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%">(9.2)</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%">20.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><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%">(1.5)</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%">20.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></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="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: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="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 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%">20.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="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%">14.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="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%">23.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%">19.1&#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: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%">102.2&#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%">71.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="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%">111.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%">86.5&#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:10pt;font-weight:400;line-height:100%">Loss on write-off of fixed 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:10pt;font-weight:400;line-height:100%">4.3&#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%">&#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:10pt;font-weight:400;line-height:100%">1.4&#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%">&#8212;&#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:400;line-height:100%">Restructuring recovery</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%">&#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%">&#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%">(0.3)</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:10pt;font-weight:700;line-height:100%">Total operating expenses</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%">127.2&#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%">86.3&#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%">135.5&#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%">105.3&#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><td colspan="3" style="background-color:#cceeff;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:#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:10pt;font-weight:400;line-height:100%">(136.4)</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:10pt;font-weight:400;line-height:100%">(65.8)</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:10pt;font-weight:400;line-height:100%">(137.0)</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:10pt;font-weight:400;line-height:100%">(85.1)</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 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="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: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:#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="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 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:#ffffff;padding:2px 0 2px 1pt;text-align: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.3&#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%">6.4&#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%">12.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.0&#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:400;line-height:100%">Gain on forgiveness of Paycheck Protection Program loan</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%">&#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%">&#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%">(10.7)</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></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 income</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><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%">(31.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%">(0.6)</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%">(11.6)</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></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%">Other expenses</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.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%">0.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="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%">0.9&#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%">0.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></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:1pt solid #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:1pt solid #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:1pt solid #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:1pt solid #000;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><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;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:#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:10pt;font-weight:400;line-height:100%">(150.8)</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"><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-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%">(41.3)</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"><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-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%">(150.1)</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"><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-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%">(70.4)</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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:10pt"><span><br/></span></div><div id="i3e35699d61d94f84beb74724f5f81a53_88"></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Net sales</span></div><div style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.350%"></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.400%"></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.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.767%"></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/>September 30,</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:9pt;font-weight:700;line-height:100%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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%">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%">1,288&#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,522&#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%">3,397&#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%">3,513&#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%">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%">476&#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%">1,227&#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%">1,908&#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%">3,947&#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></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%">1,764&#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%">2,749&#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%">5,305&#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%">7,460&#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></tr></table></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales of $1.8&#160;million for the third quarter of 2022 decreased $1.0&#160;million, or 36%, compared to third quarter of 2021 net sales of $2.7&#160;million, primarily driven by a decrease in MMM sales of $0.8&#160;million, or 61%, and a decrease of $0.2&#160;million, or 15%, of commercial products sales. Net MMM product sales decreased in the third quarter of 2022 compared to the same period in 2021, mainly due to availability and prioritization of government project funding and the delayed timing of expected orders. The decrease in commercial product sales in the third quarter of 2022 reflects (i) volatility of sales to large institutional customers; (ii) fluctuations in the timing and pace of commercial projects, including where lead times extended into the subsequent quarter; and (iii) lingering macroeconomic supply chain impacts as a result of the COVID-19 pandemic. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Net sales of $5.3&#160;million for the first nine months of 2022 decreased $2.2&#160;million, or 29%, compared to the same period in 2021, primarily driven by a decrease in MMM product sales. Net sales of our MMM products decreased mainly due to availability of government funding and the delayed timing of expected orders in the first nine months of 2022. Net sales of our commercial products decreased in the first nine months of 2022 compared to the same period of 2021, reflecting the impact of decreased commercial sales during the third quarter of 2022 as well as the impacts in the timing, pace and size of commercial projects.</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><div id="i3e35699d61d94f84beb74724f5f81a53_91"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Gross Loss</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross loss was $(0.2)&#160;million, or (9)% of net sales, for the third quarter of 2022. This compares with gross profit of $0.6&#160;million, or 21% of net sales, in the third quarter of 2021. The year-over-year decrease in gross profit was driven by (i) lower sales volume, an unfavorable impact of $0.3 million, or 20% of net sales; (ii) an unfavorable product mix impact of approximately $0.2 million, or 13% of net sales; (iii) an unfavorable net impact of $0.3 million, or 16% of net sales, from our inventory reduction project; and (iv) a favorable impact from the reduction in fixed costs of $0.1 million or 2% of net sales. Gross loss for the third quarter of 2022 also included unfavorable freight-in variances of $0.1&#160;million, or 6% of net sales, while gross profit for the third quarter of 2021 included favorable price and usage variances for material and labor of $0.4 million, or 19% of net sales.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross loss was $(0.1)&#160;million, or (2)% of net sales, for the first nine months of 2022 compared to a gross profit of $1.5&#160;million, or 20% of net sales, for the first nine months of 2021. The decrease was primarily related to (i) lower sales volume, which was an unfavorable impact of $0.8 million, or 16% of net sales; (ii) an unfavorable impact from product mix of $0.8 million, or 16% of net sales; (iii) an unfavorable net impact of approximately $0.6 million, or 11% of net sales, mainly from the unfavorable net changes related to the inventory reduction project versus 2021; and (iv) a favorable impact of approximately $0.6 million, or 3% of net sales, from the reduction of fixed costs. The gross loss for the first nine months of 2022 included unfavorable freight-in variances of $0.4&#160;million, or 7% of net sales. Gross profit for the first nine months of 2021 included favorable price and usage variances for material and labor of $0.6 million, or 12% of net sales, and unfavorable inventory and warranty reserves recorded of $0.1 million, or 2% of net sales.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_94"></div><div style="margin-bottom:10pt;margin-top:10pt"><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 style="margin-bottom:10pt"><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><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:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Product development expenses were $0.4&#160;million for the third quarter of 2022, down 9% from the third quarter of 2021. Product development expenses primarily relate to the development of our next generation of 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 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%"> products.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Product development expenses were $1.2&#160;million for the first nine months of 2022, a $0.2&#160;million decrease compared to $1.4&#160;million for the first nine months of 2021. The decrease is primarily related to payroll expense and product testing associated with the development and launch of our ultraviolet-C light disinfection product portfolio in 2021.</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Selling, general and administrative expenses were $1.8&#160;million for the third quarter of 2022, down 8% as compared to $2.0&#160;million in the third quarter of 2021. The decrease in expenses from the third quarter of 2021 primarily relates to reductions of $0.2 million in payroll and payroll related expenses and $0.1 million in trade show and other marketing expenses. These decreases were offset by an increase of $0.1 million in professional fees.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Selling, general and administrative expenses were $5.9&#160;million for the first nine months of 2022, compared to $6.5&#160;million for the first nine months of 2021. The decrease is primarily due to decreases in payroll of $0.9 million, offset by increases in trade show and other marketing costs of $0.1 million, severance costs of $0.1 million and recruiting and relocation fees of $0.1 million. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Restructuring</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No restructuring expense was recorded for the three and nine months ended September&#160;30, 2022. For the three months ended September 30, 2021, approximately $1 thousand in restructuring expense was recorded, and for the nine months ended September 30, 2021, approximately $21 thousand in restructuring credits were recorded. All restructuring credits are related to the cost and offsetting sub-lease income for the lease obligations for the former New York, New York office, which ended as of June 30, 2021.</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><div id="i3e35699d61d94f84beb74724f5f81a53_97"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Other Expense (Income)</span></div><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Interest expense</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense was $0.2 million for the third quarter of 2022, compared to interest expense of $0.2 million for the third quarter of 2021. Interest expense is primarily related to interest and amortization attributable to the 2021 Streeterville Note, the 2022 Streeterville Note and the Credit Facilities. The actual cash interest paid in each of the third quarter of 2022 and the third quarter of 2021 was $0.1 million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Interest expense was $0.7 million for the first nine months of 2022, compared to interest expense of $0.5 million for the first nine months of 2021. The increase in interest expense was primarily related to interest and amortization attributable to the 2022 Streeterville Note. The actual cash interest paid for each of the nine months ended September 30, 2022 and the nine months ended September 30, 2021 was $0.3 million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gain on forgiveness of PPP loan</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Forgiveness income of $0.8 million related to the Paycheck Protection Program (&#8220;PPP&#8221;) loan taken out during 2020 and forgiven in 2021 was recognized during the first half of 2021.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Employee Retention Tax Credit</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the year ended December&#160;31, 2021, we recognized other income of $876 thousand related to eligible Employee Retention Tax Credit (&#8220;ERTC&#8221;) expenses incurred during the second and third quarters of 2021 for which we became eligible. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Other income and expenses</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other expenses were $20 thousand for the third quarter of 2022, compared to other expenses of $15 thousand for the third quarter of 2021. Other expenses were $49 thousand for the nine months ended September 30, 2022, compared to other expenses of $47 thousand for the nine months ended September 30, 2021. Other expenses are mainly comprised of bank and collateral management fees.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other income of $30 thousand for the first nine months of 2022 relates to an aged customer credit balance the Company had been carrying for which the customer had not responded to various inquiries. This credit was taken to income during the first quarter of 2022.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_100"></div><div><span><br/></span></div><div style="margin-bottom:10pt"><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="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Due to the operating losses incurred during the three and nine months ended September&#160;30, 2022 and 2021, 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 id="i3e35699d61d94f84beb74724f5f81a53_103"></div><div style="margin-bottom:10pt;margin-top:10pt"><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 style="margin-bottom:10pt"><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 September 30, 2022, our net loss of $2.7 million increased 134% over the net loss for the three months ended September 30, 2021 of $1.1 million. The increase is mainly due to lower net sales in the third quarter of 2022.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the nine months ended September 30, 2022, our net loss of $8.0 million increased 52% over the net loss for the nine months ended September 30, 2021 of $5.3 million. The increase is mainly due to lower net sales in the first three quarters of 2022, the gain on the forgiveness of the PPP loan of  $0.8 million recorded in the first quarter of 2021 and the $0.9 million other income recorded during the third quarter of 2021 for the ERTC funds.</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="i3e35699d61d94f84beb74724f5f81a53_106"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt;margin-top:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At September&#160;30, 2022, we had $41 thousand in cash and a total of $4.8 million of debt, including $1.6 million outstanding under our Inventory Facility, $0.4 million outstanding under our Receivables Facility, $0.4 million outstanding on the 2021 Streeterville Note, $1.9 million outstanding on the 2022 Streeterville Note, and $0.5 million outstanding on the 2022 Promissory Note. At September&#160;30, 2022, we no additional availability under the Inventory Facility and $0.2 million under the Receivables Facility. We have historically incurred substantial losses, and as of September&#160;30, 2022, we had an accumulated deficit of $146.7 million. Additionally, our sales have been concentrated among a few major customers and for the nine months ended September 30, 2022, three customers accounted for approximately 38% of net sales.</span></div><div style="margin-bottom:10pt"><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 in Note 3. &#8220;Restructuring,&#8221; we have previously reduced our operating expenses to be more commensurate with our expected sales volumes. In the second and third quarters of 2022, we repeatedly revisited cost reduction opportunities and further reduced operating expenses for the second half of 2022. 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 September&#160;30, 2022.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Throughout 2021 and 2022, we have continued to evaluate and assess financing and other strategic options as we seek to achieve profitability. We plan to continue to develop advanced lighting and lighting control technologies and introduce impactful new products surrounding 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%">, our patented, breakthrough powerline control platform. We also continue to believe our proprietary 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%"> emergency backup lighting system also addresses a market need and will continue to help drive commercial sales for us as it has been well received in the market.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We plan to achieve profitability by growing our sales through existing and new lighting and control systems products, and by continuing to refine and execute on our multi-channel sales strategy that targets key verticals, such as government, healthcare, eldercare, education, and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships, as well as our emerging consumer market focus.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As described in Note 9, &#8220;Stockholders&#8217; Equity,&#8221; we also raised approximately $3.2 million of net proceeds upon the issuance of common stock and June 2022 Warrants in connection with the June 2022 Private Placement, $4.0 million of net proceeds upon the issuance of common stock and December 2021 Warrants in connection with the December 2021 Private Placement, and approximately $4.5 million of net proceeds upon the issuance of common stock in connection with the June 2021 Equity Offering. As described in Note 7, &#8220;Debt&#8221;, in September 2022, April 2022 and April 2021, we obtained net proceeds from bridge financing of approximately $0.5 million, $1.8 million and $1.5 million, respectively. Also in April 2021, we expanded the borrowing capacity on one of our revolving credit facilities.</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 taken throughout 2021 and 2022, as well as the June 2022 Private Placement, the December 2021 Private Placement and the June 2021 Equity Offering that strengthened our balance sheet, our credit facility capacity increase and bridge financing in April 2021 and April 2022, and the funds we expect to receive related to the ERTC (see Note 11, &#8220;Other Income&#8221; for details), were all 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 willingness of our suppliers to continue partnering with us, the corresponding time required to ramp up sales from new products, markets, and customers into this sales cycle, the timing of introductions of additional new products, significant competition, potential sales volatility given our customer concentration, numerous interruptions and cost increases in the supply chain globally, and the long-term economic impact from the COVID-19 pandemic that has significantly diminished the interest and activities for our customers&#8217; lighting retrofit projects until occupancy returns to more normal levels, among other factors.</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><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%">Additionally, global supply chain and logistics constraints are impacting our inventory purchasing strategy, as we seek to manage shortages of available components, longer lead times in obtaining components, and the willingness of our suppliers to continue providing timely and cost-effective products, while balancing the development and implementation of an inventory reduction plan. Disruptions in global logistics networks are also impacting our lead times and ability to efficiently and cost-effectively transport products from our third-party suppliers to our facility. 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 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-weight:400;line-height:120%;padding-left:14.5pt">obtaining financing from traditional or non-traditional investment capital organizations or individuals; </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-weight:400;line-height:120%;padding-left:14.5pt">obtaining funding from the sale of our common stock or other equity or debt instruments; and</span></div><div style="margin-bottom:10pt;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-weight:400;line-height:120%;padding-left:14.5pt">obtaining debt financing with lending terms that more closely match our business model and capital needs.</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: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-weight:400;line-height:120%;padding-left:14.5pt">additional equity financing may not be available to us on satisfactory terms, particularly in light of the current price of our common stock, and any equity we are able to issue could lead to substantial dilution for current stockholders and have rights, preferences and privileges senior to our common stock;</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-weight:400;line-height:120%;padding-left:14.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="margin-bottom:10pt;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-weight:400;line-height:120%;padding-left:14.5pt">the current environment in the capital markets and volatile interest rates, combined with our capital constraints, may prevent us from being able to obtain adequate debt financing.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If we are unable to find a permanent chief financial officer, it may be more difficult to obtain additional financing on satisfactory terms or at all. 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 style="margin-bottom:10pt"><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 ensure adequate 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, could provide us with an ability to finance our operations through the next twelve months and may mitigate the substantial doubt about our ability to continue as a going concern.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 23, 2022, we received a written notice (the &#8220;Notice&#8221;) from Nasdaq&#8217;s Listing Qualifications staff (the &#8220;Staff&#8221;) that the Company is not in compliance with the requirement to maintain a minimum closing bid price of $1.00 per share, as set forth in Nasdaq Listing Rule 5550(a)(2) (the &#8220;Bid Price Requirement&#8221;), because the closing bid price of our common stock was below $1.00 per share for 30 consecutive business days. The Notice does not impact the listing of our common stock on The Nasdaq Capital Market at this time. The Notice provided that, in accordance with Nasdaq Listing Rule 5810(c)(3)(A), the Company has a period of 180 calendar days from the date of the Notice, or until February 20, 2023, to regain compliance with the Bid Price Requirement. During this period, our common stock will continue to trade on The Nasdaq Capital Market. However, there can be no assurance that the Company will be able to regain compliance with the rule or will otherwise be in compliance with other Nasdaq listing criteria. If we are unable to regain compliance, Nasdaq may make a determination to delist our common stock.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 17, 2020, we received a letter from the Staff 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. 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. In accordance with one part of the plan submitted to the Staff, we successfully modified our outstanding January 2020 Warrants and in December 2020, we reclassified $1.4&#160;million from warrant liability into equity. 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 December 31, 2020, our stockholders&#8217; equity was $4,255,000, satisfying the Minimum Stockholders&#8217; Equity Rule. At </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><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">December&#160;31, 2021, our stockholders&#8217; equity was $6,209,000 and at September&#160;30, 2022, our stockholders&#8217; equity was $1,526,000.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_109"></div><div style="margin-bottom:10pt;margin-top:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At September&#160;30, 2022, our cash balance was approximately $41 thousand, compared to approximately $2.7 million at December&#160;31, 2021.</span></div><div style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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%">Nine months ended<br/>September 30,</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%">2022</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%">2021</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 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%">(6,241)</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%">(8,420)</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%">(41)</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%">(311)</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%">3,641&#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%">6,934&#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 style="margin-bottom:10pt"><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 operating activities</span></div><div style="margin-bottom:10pt"><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 $6.2 million for the nine months ended September 30, 2022. The net loss was $8.0 million and was adjusted for non-cash items, including depreciation and amortization, stock-based compensation, provisions for inventory, warranty, and accounts receivable reserves and working capital changes. During the nine months ended September 30, 2022, we generated $1.5 million from inventory, $0.2 million through the timing of collection of accounts receivable, and $0.2 million from changes in prepaid and other assets. We used $0.1 million from accounts payable due to the timing of inventory receipts and payments, $0.5 million due to changes in accrued and other liabilities (primarily due to a decrease in accrued payroll), and $0.3 million from changes in deferred revenue.</span></div><div style="margin-bottom:10pt"><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 $8.4 million for the nine months ended September 30, 2021. The net loss was $5.3 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, other income related to the ERTC, and accounts receivable reserves and working capital changes. During the nine months ended September 30, 2021, we generated $0.4 million through the timing of collection of accounts receivable and $0.1 million due to the timing of inventory receipts and payments. We used $0.1 million through the timing of the receipt of inventory against short-term deposits and $2.1 million for inventory primarily due to global supply chain challenges that are impacting our inventory purchasing strategy, leading to a buildup of inventory and inventory components in an effort to manage both shortages of available components and longer lead times in obtaining components. We also used $0.3 million due to changes in accrued and other liabilities (primarily due to an increase in accrued payroll of $0.2 million; this increase was offset by a reduction of $0.2 million in accrued accounting and legal fees and $0.2 million in accrued bonuses), and $0.1 million from changes in prepaid and other current assets.</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 $41 thousand for the nine months ended September 30, 2022 and resulted primarily from the purchase of tooling.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the nine months ended September 30, 2021, net cash used in investing activities was $311 thousand and resulted primarily from the purchase of software and a development of the mUVe</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%"> ultraviolet-C light disinfection robot. The mUVe</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%"> ultraviolet-C light disinfection robots were fully written off in the third quarter of 2022.</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%">41</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="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 nine months ended September 30, 2022 was $3.6 million, primarily related to proceeds of $450 thousand from the 2022 Promissory Note, net proceeds of $1.8 million from the 2022 Streeterville Note and net proceeds of $3.2 million from the June 2022 Private Placement. These proceeds were offset slightly by $1.4 million in payments made against the 2021 Streeterville Note and $0.2 million in net payments made on the Credit Facilities.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the nine months ended September 30, 2022, all of the December 2021 Pre-Funded Warrants as well as the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of 2,692,310 shares remained outstanding, with a weighted average exercise price of $1.30 per share. The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $3.5 million in the aggregate. Also at September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of 1,278,413 shares remained outstanding with an exercise price of $3.52 per share. January 2020 Warrants to purchase an aggregate of 229,414 shares remain outstanding at September&#160;30, 2022, with a weighted average exercise price of $3.67 per share. The exercise of the remaining outstanding December 2021 Warrants and January 2020 Warrants could provide us with cash proceeds of up to $4.5 million and $0.8 million, respectively.</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 nine months ended September 30, 2021 was $6.9 million, primarily related to $4.5 million of net proceeds from the June 2021 Equity Offering, $1.5 million of net proceeds from the 2021 Streeterville Note, proceeds from the exercise of 156,446 warrants of $0.5 million and net proceeds from the Credit Facilities of $0.3 million. Investors in the January 2020 Equity Offering received warrants to purchase shares of our common stock, of which warrants to purchase an aggregate of 310,860 shares remained outstanding at September&#160;30, 2021 with a weighted average exercise price of $3.59 per share.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_112"></div><div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contractual and other obligations</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Commitments</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022, we had approximately $1.0&#160;million in outstanding purchase commitments for inventory, of which $0.8&#160;million is expected to ship in the fourth quarter of 2022 and $0.2&#160;million is expected to ship in the first quarter of 2023 and beyond.</span></div><div style="margin-bottom:10pt"><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 and other obligations as compared to those included in our 2021 Annual Report.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_115"></div><div style="margin-bottom:10pt;margin-top:10pt;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="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no material changes to our critical accounting policies as compared to those included in our 2021 Annual Report.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_118"></div><div style="margin-bottom:10pt;margin-top:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 September 30, 2022, sales to a regional commercial lighting retrofit company accounted for approximately 32% of net sales. For the three months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 19%, 17% and 27% 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 36% of net sales for the same period.</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%">42</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="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the nine months ended September 30, 2022, sales to our primary distributor for the U.S. Navy, a regional commercial lighting retrofit company, and a commercial building system provider, accounted for approximately 13%, 15%, and 10% 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 17% of net sales for the same period. For the nine months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 33%, 10% and 17% 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 43% of net sales for the same period.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A regional commercial lighting retrofit company, a commercial building systems provider, and a U.S. Navy mechanical contractor accounted for approximately 25%, 12%, and 12% of net trade accounts receivable, respectively, at September&#160;30, 2022. At December&#160;31, 2021, a distributor to the U.S. Department of Defense accounted for 20% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 36% of our net trade accounts receivable.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">One offshore supplier accounted for approximately 17% and 18%, respectively, of our total expenditures for the three and nine. months ended September&#160;30, 2022. For the three and nine months ended September&#160;30, 2021, one offshore supplier accounted for approximately 19% and 30%, respectively, of total expenditures.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At September&#160;30, 2022, one offshore supplier accounted for approximately 45% of our trade accounts payable balance. At December&#160;31, 2021, this offshore supplier accounted for approximately 60% of our trade accounts payable balance.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_121"></div><div style="margin-bottom:10pt;margin-top:10pt"><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 style="margin-bottom:10pt;margin-top:10pt"><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 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><div id="i3e35699d61d94f84beb74724f5f81a53_124"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 id="i3e35699d61d94f84beb74724f5f81a53_127"></div><div style="margin-bottom:10pt;margin-top:10pt"><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 style="margin-bottom:10pt;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-bottom:10pt;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 who also serves as our principal financial officer, as appropriate, to allow for timely decisions regarding required disclosure.</span></div><div style="margin-bottom:10pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to Rule 13a-15(b) under the Exchange Act, our management must evaluate, with the participation of our Chief Executive Officer, the effectiveness of our disclosure controls and procedures, as of September&#160;30, 2022, the end of the period covered by this Quarterly Report. Management, with the participation of our Chief Executive 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 concluded that our disclosure controls and procedures were effective as of September&#160;30, 2022.</span></div><div style="margin-bottom:10pt;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="margin-bottom:10pt;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 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%">44</span></div></div></div><div id="i3e35699d61d94f84beb74724f5f81a53_130"></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="i3e35699d61d94f84beb74724f5f81a53_133"></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 September&#160;30, 2022, we were not involved in any material legal proceedings.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_136"></div><div style="margin-bottom:10pt;margin-top:10pt"><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 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 id="i3e35699d61d94f84beb74724f5f81a53_139"></div><div style="margin-bottom:10pt;margin-top:10pt;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 style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div id="i3e35699d61d94f84beb74724f5f81a53_142"></div><div style="margin-bottom:10pt;margin-top:10pt;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="margin-bottom:10pt;margin-top:10pt;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 id="i3e35699d61d94f84beb74724f5f81a53_145"></div><div style="margin-bottom:10pt;margin-top:10pt;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="margin-bottom:10pt;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 id="i3e35699d61d94f84beb74724f5f81a53_148"></div><div style="margin-bottom:10pt;margin-top:10pt;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="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On November 9, 2022, the Company issued a short-term Promissory Note in favor of Mei-Yun (Gina) Huang in the original principal amount of $350 thousand. Ms. Huang previously provided $450 thousand of bridge financing in September 2022 on the substantially the same terms.  Ms. Huang is a member of the Company&#8217;s board of directors.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The promissory note has a maturity date of nine months from the date of issuance and bears interest at an annual rate of eight percent. The outstanding principal balance and all accrued interest thereon are due and payable at the maturity date. The Company may prepay the amounts outstanding under the note in whole or in part at any time prior to the maturity date.  Upon the occurrence of an event of default under the note, Ms. Huang may, at her option, declare the amount outstanding under the note immediately due and payable. After the occurrence of an event of default, Ms. Huang may elect to have interest accrue on the note at a rate per annum of ten percent, or such lesser rate as permitted under applicable law.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On November 4, 2022, the Company issued a short-term Promissory Note in favor of Jay Huang in the original principal amount of $250 thousand (the &#8220;Huang Note&#8221;). In October of 2022, Mr. Huang also provided $50 thousand of bridge financing on the substantially the same terms as the Huang Note.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Huang Note has a maturity date of nine months from the date of issuance and bears interest at an annual rate of eight percent. The outstanding principal balance and all accrued interest thereon are due and payable at the maturity date. The Company may prepay the amounts outstanding under the Huang Note in whole or in part at any time prior to the maturity date.  Upon the occurrence of an event of default under the Huang Note, Mr. Huang may, at his option, declare the amount outstanding under the Huang Note immediately due and payable. After the occurrence of an event of default, Mr. Huang may elect to have interest accrue on the Huang Note at a rate per annum of ten percent, or such lesser rate as permitted under applicable law.</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%">45</span></div></div></div><div id="i3e35699d61d94f84beb74724f5f81a53_151"></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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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><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/000143774913014640/ex3-1.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><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%">3.2</span></td><td colspan="3" style="background-color:#ffffff;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><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><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%">3.4</span></td><td colspan="3" style="background-color:#ffffff;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><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><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%">3.6</span></td><td colspan="3" style="background-color:#ffffff;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><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/ex37-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><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%">3.8</span></td><td colspan="3" style="background-color:#ffffff;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><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><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%">3.10</span></td><td colspan="3" style="background-color:#ffffff;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><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><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%">3.12</span></td><td colspan="3" style="background-color:#ffffff;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><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/000114420407023964/v073944_ex3-1.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><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%">10.1+</span></td><td colspan="3" style="background-color:#ffffff;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="a20220930exhibit10110-q.htm">Chief Executive Officer Offer Letter dated September 6, 2022 between Lesley A. Matt and Energy Focus, Inc.</a></span></div></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/000092416822000081/a202209ex101promissorynote.htm">Promissory Note, date</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/000092416822000081/a202209ex101promissorynote.htm">d</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/000092416822000081/a202209ex101promissorynote.htm"> as of September 16, 2022</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/000092416822000081/a202209ex101promissorynote.htm">,</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/000092416822000081/a202209ex101promissorynote.htm"> by and between the Company and Mei-Yun Huang (incorporated by reference to Exhibit 10.1 to the Registrant&#8217;s Current Report on Form 8-K filed on September</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/000092416822000081/a202209ex101promissorynote.htm"> </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/000092416822000081/a202209ex101promissorynote.htm">22, 2022).</a></span></div></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:400;line-height:100%">10.3</span></td><td colspan="3" style="background-color:#ffffff;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="a20220930exhibit10310-q.htm">Promissory Note, dated as of October 27, 2022, by and between the Company and Jay Huang</a></span></div></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.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="a20220930exhibit10410-q.htm">Promissory Note, dated as of November 4, 2022, by and between the Company and Jay Huang</a></span></div></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:400;line-height:100%">10.5</span></td><td colspan="3" style="background-color:#ffffff;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="a20220930exhibit10510-q.htm">Promissory Note, dated as of November 9, 2022, by and between the Company an</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="a20220930exhibit10510-q.htm">d</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="a20220930exhibit10510-q.htm"> Mei-Yu</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="a20220930exhibit10510-q.htm">n Huang</a></span></div></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="a20220930exhibit31110-q.htm">Certification of Principal Executive Officer and Principal Financial Officer Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></span></div></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:400;line-height:100%">32.1++</span></td><td colspan="3" style="background-color:#ffffff;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="a20220930exhibit32110-q.htm">Certification of Principal Executive Officer and Principal Financial Officer Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.</a></span></div></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 September&#160;30, 2022, formatted in XBRL (eXtensible Business Reporting Language): (i) Condensed Consolidated Balance Sheets at September&#160;30, 2022 and December&#160;31, 2021, (ii) Condensed Consolidated Statements of Operations for the three and nine months ended September&#160;30, 2022 and 2021, (iii) Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the three and nine months ended September&#160;30, 2022 and 2021, (v) Condensed Consolidated Statements of Cash Flows for the three and nine months ended September 30, 2022 and 2021, and (vi) the Notes to Condensed Consolidated Financial Statements.</span></div></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:400;line-height:100%">*104</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%">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><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%">46</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="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%">47</span></div></div></div><div id="i3e35699d61d94f84beb74724f5f81a53_154"></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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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%">November 10, 2022</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/ Lesley A. Matt</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%">Lesley A. Matt</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%">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 and Principal Financial Officer)</span></td></tr></table></div><div style="text-align:center"><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%">48</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.1
<SEQUENCE>2
<FILENAME>a20220930exhibit10110-q.htm
<DESCRIPTION>EX-10.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 2022 Workiva -->
<title>Document</title></head><body><div id="i61327a577d804147b09195d6d5a3b278_1"></div><div style="min-height:36pt;width:100%"><div style="-sec-extract:summary;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 10.1</font></div></div><div style="-sec-extract:summary"><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></div><div><img alt="ef_logoxtaglinelockupxcmyka.jpg" src="ef_logoxtaglinelockupxcmyka.jpg" style="height:90px;margin-bottom:5pt;vertical-align:text-bottom;width:150px"></div><div><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:112%">September 6, 2022</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:112%">Lesley Matt 13629 Janell Drive</font></div><div><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:112%">Columbia Station, OH 44028</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:112%">Dear Lesley&#58;</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:112%">It is with great enthusiasm that we extend to you this formal offer of employment for the position of Chief Executive Officer with Energy Focus, Inc. (the &#8220;Company&#8221;), subject to the terms and conditions outlined below. In this position, you report directly to the Board of Directors. This offer is contingent upon approval by the Company&#8217;s Board of Directors and successful completion of numbered items 10 and 11.</font></div><div><font><br></font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">Our offer for employment includes&#58;</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Start Date &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> Your starting date will be as soon as possible, but we hope that you will be able to start no later than September 12, 2022.  We respect and accept that some of your existing duties may extend beyond your start date, and we agree to work cooperatively with you in a smooth transition, as required, for all parties. </font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Base salary &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> Your starting annualized salary will be $260,000.00, less payroll deductions and all required withholdings, payable in installments based on the Company&#8217;s practices as may be in effect from time to time. We pay on a bi-weekly basis, which computes to $10,000.00 per pay period. </font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Performance Bonus &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">You will be eligible to earn an annual discretionary cash bonus with a targeted rate of 50% of base salary, governed under the rules of the FY2022 Executive Bonus Plan or successor plans then in effect. This bonus is based upon both the Company&#8217;s financial performance (70%) and your individual performance (30%). Payment of the bonus is contingent upon your continued employment with the Company at the time the bonus is paid and will be paid in accordance with the applicable bonus plan approved by the Board of Directors. The Board of Directors or the Compensation Committee could, in its sole discretion, adjust amounts payable downward or upward to reflect such considerations as it may in its sole discretion deem to be appropriate.  Participation in an annual bonus program is at the discretion of the Company&#8217;s Board of Director&#8217;s, is not guaranteed and may be modified or discontinued at any time by the Board.</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Equity Awards &#8211; </font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">As a material inducement to your acceptance of employment, upon or as soon as practicable following your first day of employment and subject to the approval of the Company&#8217;s Board of Directors, you will be granted options to purchase 150,000 shares of Energy Focus common stock, which award will vest under substantially the same terms as under our standard executive non-qualified option award agreement (and otherwise be subject to substantially similar terms and conditions as those established under the Company&#8217;s 2020 Stock Incentive Plan).  One-fourth of the originally granted options will generally vest on the first anniversary of the grant date, and the remainder will generally vest in equal monthly installments thereafter over a three-year period.</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Benefits &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> You are entitled to participate in the standard benefits program, which the Company offers to its eligible employees. A brief summary of the programs currently in place is set forth below.  The specific terms of each benefit apply.</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><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div style="margin-bottom:10pt;padding-left:72pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Medical, Dental, Vision benefits &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> You and your eligible dependents will be eligible for Company medical, dental and vision benefit programs your first day of employment. The Company pays full dental and vision benefits for our three plans that are offered. </font></div><div style="margin-bottom:10pt;padding-left:72pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Life Insurance benefits &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> You will be eligible for $50,000 of group term life insurance at no cost to you effective your first day of employment. Additional voluntary life insurance is available for you and your dependents at your own cost.  </font></div><div style="margin-bottom:10pt;padding-left:72pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">c.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8.67pt">STD&#47;LTD benefits &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> You will be eligible for both short-term and long-term disability benefits at no cost to you effective your first day of employment.  </font></div><div style="margin-bottom:10pt;padding-left:72pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">d.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Company 401(k) &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> You will be eligible to participate in the company&#8217;s 401(k) program on the first of the month following three months of employment.</font></div><div style="margin-bottom:10pt;padding-left:72pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">e.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Employee Stock Purchase Plan &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> You will be eligible to participate in the Company&#8217;s Employee Stock Purchase Plan. Note this plan allows you to purchase the Company&#8217;s stock at a 15% discount through payroll deduction. Entrance dates are January 1 and July 1 every year.</font></div><div style="margin-bottom:10pt;padding-left:72pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">f.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:11.34pt">Holidays &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> In addition to the company&#8217;s 8 paid holidays, based on your start date, you will also receive three personal days for use in 2022.</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">6.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Expenses &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> Energy Focus will reimburse you for all company approved business travel and entertainment expenses within the guidelines of the Company&#8217;s Travel and Entertainment Expense Policy.  All T&#47;E expenses must be submitted via expense reports including receipts.</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">7.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">New Hire Documentation&#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> As part of the hiring process, you will be required to complete certain Federal, State and company documentation. In compliance with federal law, all persons hired will be required to verify identity and eligibility to work in the United States and to complete the required employment eligibility verification document form upon hire.</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">8.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">Company Handbook&#47;Confidentiality Agreement &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> Due to the large amount of intellectual property and other company proprietary factors as well as company rules and standards, as a condition of your employment we require you to sign several agreements upon joining the Company that confirm your commitment to confidentiality, code of conduct and ethical behavior.  The Confidentiality and Non-Competition Agreement is the Company&#8217;s standard restrictive covenant agreement including confidentiality and intellectual property-related provisions and an agreement that you will not compete with the Company or solicit its customers or employees for a period extending one year beyond your last date of employment with the Company.</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">9.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:8pt">At Will Employment &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> The employment relationship between you and the Company shall be &#8220;at will&#8221; and is terminable by either party at any time for any or no reason.</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">10.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:1.33pt">Pre-Employment Drug Screen &#8211; </font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">The offer of employment contained in this letter is contingent upon you successfully completing and passing a pre-employment drug screen. Please be sure to bring with you a valid driver&#8217;s license when going to your pre-employment drug test. The testing locations and other testing information will be given to you after your acceptance of the employment offer, and you will be required to take the test prior to your first day.</font></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">11.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:1.33pt">Background Check &#8211;</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> Prior to or immediately following your start date a background screening will be completed.  A release statement will be provided to you for completion and submission to me in order to facilitate the screen. </font></div><div style="margin-bottom:10pt"><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><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div style="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">12.</font><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:700;line-height:120%;padding-left:1.33pt">Miscellaneous &#8211; </font></div><div style="margin-bottom:10pt;text-indent:36pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">If any reimbursements provided by the Company pursuant to this offer letter would constitute deferred compensation for purposes of Section 409A of the Internal Revenue Code of 1986, as amended, such reimbursements will be subject to the following rules&#58; (i) the amounts to be reimbursed shall be determined pursuant to the terms of the applicable benefit plan, policy or agreement and shall be limited to your lifetime and the lifetime of your eligible dependents&#59; (ii) the amounts eligible for reimbursement during any calendar year may not affect the expenses eligible for reimbursement in any other calendar year&#59; (iii) any reimbursement of an eligible expense shall be made on or before the last day of the calendar year following the calendar year in which the expense was incurred&#59; and (iv) your right to a reimbursement is not subject to liquidation or exchange for cash or another benefit.</font></div><div style="margin-bottom:10pt;text-indent:36pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">The Company may withhold from any amounts payable under this offer letter all federal, state, city or other taxes as the Company is required to withhold.  Notwithstanding any other provision of this offer letter, the Company will not be obligated to guarantee any specific tax result for you with respect to any payment provided to you hereunder, and you will be responsible for any taxes imposed on you with respect to any such payment.</font></div><div style="margin-bottom:10pt;text-indent:36pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">By accepting this offer, you represent that you are able to accept this job and carry out the work that it would involve without breaching any legal restrictions on your activities, such as non-competition, non-solicitation or other work-related restrictions imposed by a current or former employer.  You also represent that you will inform the Company about any such restrictions and provide the Company with as much information as possible, including any agreements between you and your current or former employer describing such restrictions on your activities.  You further confirm that you will not remove or take any documents or proprietary data or materials of any kind, electronic or otherwise, with you from your current or former employer to the Company without written authorization from your current or former employer, nor will you use or disclose any such confidential information during the course and scope of your employment with the Company.  If you have any questions about the ownership of specific documents or other information, you should discuss such questions with your former employer before removing or copying the documents or information.</font></div><div style="margin-bottom:10pt"><font><br></font></div><div style="margin-bottom:10pt;text-indent:36pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">This offer letter embodies the complete agreement and understanding between the parties with respect to the subject matter hereof and effective as of its date supersedes and preempts any prior understandings, agreements or representations by or between the parties, written or oral, which may have related to the subject matter hereof in any way.  If one or more of the provisions of this offer letter is invalidated for any reason by a court of competent jurisdiction, any provision so invalidated shall be deemed to be separable from the other provisions hereof, and the remaining provisions hereof shall continue to be valid and fully enforceable.  This offer letter may be executed in separate counterparts, each of which shall be deemed to be an original and both of which taken together shall constitute one and the same agreement.</font></div><div style="margin-bottom:10pt;text-indent:36pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">This offer letter shall be governed by, and construed in accordance with, the internal, substantive laws of the State of Ohio.  You agree that the state and federal courts located in the State of Ohio shall have jurisdiction in any action, suit or proceeding against you based on or arising out of this Agreement, and you hereby&#58; (a) submit to the personal jurisdiction of such courts&#59; (b) consent to service of process in connection with any action, suit or proceeding against you&#59; and (c) waive any other requirement (whether imposed by statute, rule of court or otherwise) with respect to personal jurisdiction, venue or service of process.</font></div><div style="margin-bottom:10pt;text-align:center"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#91;Signature page follows.&#93; </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><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">Lesley, we look forward to having you join the Company&#8217;s leadership team and know that you will play a significant role in the future success of the Company.  If you have any questions, please do not hesitate to call me directly. Please note, this offer letter is set to expire on Thursday, September 8, 2022 at 4 p.m. ET.  </font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">Best regards,</font></div><div style="margin-bottom:10pt"><font><br></font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#47;s&#47; Stephen Socolof</font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">Stephen Socolof</font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">Chairman and Interim CEO</font></div><div style="margin-bottom:10pt"><font><br></font></div><div style="margin-bottom:10pt"><font><br></font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">Accepted by Lesley Matt&#58; (Sign and Date)</font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#47;s&#47; Lesley Matt</font></div><div style="margin-bottom:10pt"><font style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> September 7, 2022</font></div><div style="margin-bottom:10pt"><font><br></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-10.3
<SEQUENCE>3
<FILENAME>a20220930exhibit10310-q.htm
<DESCRIPTION>EX-10.3
<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 2022 Workiva -->
<title>Document</title></head><body><div id="if8db51eef5f448ce8f6d7f198ebddb7b_1"></div><div style="min-height:36pt;width:100%"><div style="-sec-extract:summary;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 10.3</font></div></div><div style="-sec-extract:summary;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:130%">ENERGY FOCUS, INC. PROMISSORY NOTE</font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">U.S. $50,000.00                                                                                            &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;October 27, 2022</font></div><div style="padding-left:432pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">Solon, Ohio</font></div><div><font><br></font></div><div style="text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">FOR VALUE RECEIVED, the undersigned, </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">Energy Focus, Inc.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">, a Delaware corporation, with its principal office at 32000 Aurora Road, Suite B, Solon, Ohio 44139 (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Company</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;), unconditionally promises to pay to Jay Huang (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Lender</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;) or her permitted assigns, transferees and successors (collectively, the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Holder</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;), on July 25, 2023, at such place as may be designated in writing by the Holder, the principal sum of Fifty Thousand Dollars (U.S. $50,000.00), together with interest thereon, which interest shall not be due and payable until the Maturity Date, accrued at a rate </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:120%">per annum </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">equal to 8.0% (computed on the basis of a three hundred sixty-five (365)-day year and based upon the number of days actually elapsed, from and after the date of this Note (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Original Issue Date</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;).</font></div><div><font><br></font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">ARTICLE 1&#58;  PAYMENTS AND OTHER PAYMENT TERMS.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">1.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%;text-decoration:underline">Principal and Interest</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">.  The entire outstanding principal balance of this Note, together with all accrued interest thereon (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:112%">Repayment Amount</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">&#8221;), shall be due and payable on the Maturity Date.  Subject to prepayment as set forth in Section 1.2, any and all accrued interest shall be due and payable only on the Maturity Date.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">1.2       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%;text-decoration:underline">Prepayments</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">.  This Note may be prepaid in whole or in part at any time prior to the Maturity Date.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">1.3       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%;text-decoration:underline">Cancellation of Note</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">.  Upon payment in full of the outstanding principal balance of this Note and accrued and unpaid interest thereon, this Note will be automatically cancelled and the Company&#8217;s payment obligations hereunder will be extinguished.</font></div><div><font><br></font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">ARTICLE 2&#58;  TRANSFER RESTRICTIONS.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">2.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%;text-decoration:underline">Transfer Restrictions</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">.  The Holder shall not sell, assign, transfer, pledge or dispose of all or any part of this Note, by operation of law or otherwise, nor may the Holder pledge as collateral this Note, in any case without the written consent of the Company.</font></div><div><font><br></font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">ARTICLE 3&#58;  EVENTS OF DEFAULT.</font></div><div><font><br></font></div><div style="text-indent:77.1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">The occurrence of any of the following events with respect to the Company shall constitute an event of default under this Note (an &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:130%">Event of Default</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">&#8221;).  The Company shall notify the Holder in writing within five (5) business days following the occurrence of any Event of Default.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:101%">3.1       The Company fails to make any payment of principal or interest as required hereunder.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">3.2       Pursuant to or within the meaning of applicable law relating to insolvency or relief of debtors (a &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:112%">Bankruptcy Law</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">&#8221;), the Company (a) commences a voluntary case or proceeding, (b) consents to the entry of an order for relief against it in an involuntary case, (c) consents to the appointment of a trustee, receiver, assignee, liquidator or similar official, (d) makes an assignment for the benefit of its creditors, or (e) admits in writing its inability to pay its debts as they become due.</font></div><div><font><br></font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1</font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">3.3       A court of competent jurisdiction enters an order or decree under any Bankruptcy Law that (a) is for relief against the Company in an involuntary case, (b) appoints a trustee, receiver, assignee, liquidator or similar official for the Company&#8217;s properties, or (c) orders the liquidation of the Company, and in each case the order or decree is not dismissed within ninety (90) days.</font></div><div><font><br></font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">ARTICLE 4&#58;  REMEDIES IN THE EVENT OF DEFAULT.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">4.1       Upon the occurrence of an Event of Default, the Holder may, at its option, declare the aggregate amount of principal and interest outstanding under this Note immediately due and payable by providing written notice to the Company&#59; </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%;text-decoration:underline">provided</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">, that such demand will be in addition to all other rights and remedies of the Holder under this Note and under applicable law.</font></div><div><font><br></font></div><div style="text-align:justify;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">4.2       The Company shall pay all reasonable costs and expenses incurred by or on behalf of the Holder in connection with the Holder&#8217;s exercise of any or all of its rights and remedies under this Note, including, without limitation, reasonable attorneys&#8217; fees.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">4.3       In the case of any Event of Default under this Note that is continuing and has not been waived in writing by the Holder, this Note will continue to bear interest at the interest rate otherwise in effect hereunder plus 2% </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:112%">per annum </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">(but in any event not in excess of the maximum rate of interest permitted by applicable law).</font></div><div><font><br></font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">ARTICLE 5&#58;  MISCELLANEOUS.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">5.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%;text-decoration:underline">Severability</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">.  In the event that any provisions of this Note are determined to be invalid or unenforceable by a court of competent jurisdiction, the remainder of this Note shall remain in full force and effect without such provision.  Any provision of this Note held invalid or unenforceable only in part or degree will remain in full force and effect to the extent not held invalid or unenforceable.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">5.2       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%;text-decoration:underline">Waivers and Amendments&#59; Preservation of Remedies</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">.  No waiver by the Holder</font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">of any right or remedy under this Note shall be effective unless in a writing signed by the Holder. Neither the failure nor any delay in exercising any right, power or privilege under this Note will operate as a waiver of such right, power or privilege and no single or partial exercise of any such right, power or privilege by the Holder will preclude any other or further exercise of such right, power or privilege or the exercise of any other right, power or privilege.  To the maximum extent permitted by applicable law, (a) no claim or right of the Holder arising out of this Note may be discharged by the Holder, in whole or in part, by a waiver or renunciation of the claim or right unless in writing, signed by the Holder&#59; (b) no waiver that may be given by the Holder will be applicable except in the specific instance for which it is given&#59; and (c) no notice to or demand on the Company will be deemed to be a waiver of any obligation of the Company or of the right of the Holder to take further action without notice or demand as provided in this Note.  The Company hereby waives presentment, demand, protest and notice of dishonor, protest, diligence, filing suit, nonpayment and all other notice.  The rights and remedies herein provided are cumulative and are not exclusive of any rights or remedies which any party may otherwise have at law or in equity.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">5.3       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%;text-decoration:underline">Headings</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">.  The captions to the several Articles and Sections hereof are not a part of this Note, but are included merely for convenience of reference only and shall not affect its meaning or interpretation.</font></div><div><font><br></font></div><div style="text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">5.4       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%;text-decoration:underline">Successors</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">.  This Note shall be binding upon the Company and its successors and permitted assigns.</font></div><div><font><br></font></div><div style="text-align:center;text-indent:39pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">5.5       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%;text-decoration:underline">Governing Law</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%">.  This Note will be governed by the laws of the State of New</font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">York without regard to conflicts of laws principles.</font></div><div><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:112%">&#91;Signature page follows&#93;</font></div><div><font><br></font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div style="text-indent:82.1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">IN WITNESS WHEREOF, the Company has caused its duly authorized representative to execute this Note on the date first above written.</font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:216pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:130%">ENERGY FOCUS, INC.</font></div><div><font><br></font></div><div><font><br></font></div><div style="padding-left:216pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%">By&#58;&#160;&#160;&#160;&#160;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%;text-decoration:underline">&#47;s&#47; Lesley A. Matt</font></div><div style="padding-left:216pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%">Name&#58; Lesley A. Matt</font></div><div style="padding-left:216pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">Title&#58; Chief Executive Officer</font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:153.1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:112%">&#91;Signature Page to Promissory Note&#93;</font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4</font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.4
<SEQUENCE>4
<FILENAME>a20220930exhibit10410-q.htm
<DESCRIPTION>EX-10.4
<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 2022 Workiva -->
<title>Document</title></head><body><div id="i8ecc6851baa747028d9a8356dbe20450_1"></div><div style="min-height:36pt;width:100%"><div style="-sec-extract:summary;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 10.4</font></div></div><div style="-sec-extract:summary;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:130%">ENERGY FOCUS, INC. PROMISSORY NOTE</font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">U.S. $250,000.00                                                                                            &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;November 4, 2022</font></div><div style="padding-left:432pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">Solon, Ohio</font></div><div><font><br></font></div><div style="margin-bottom:10pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">FOR VALUE RECEIVED, the undersigned, </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">Energy Focus, Inc.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">, a Delaware corporation, with its principal office at 32000 Aurora Road, Suite B, Solon, Ohio 44139 (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Company</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;), unconditionally promises to pay to Jay Huang (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Lender</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;) or her permitted assigns, transferees and successors (collectively, the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Holder</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;), on August 4, 2023, at such place as may be designated in writing by the Holder, the principal sum of Two Hundred Fifty Thousand Dollars (U.S. $250,000.00), together with interest thereon, which interest shall not be due and payable until the Maturity Date, accrued at a rate </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:120%">per annum </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">equal to 8.0% (computed on the basis of a three hundred sixty-five (365)-day year and based upon the number of days actually elapsed, from and after the date of this Note (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Original Issue Date</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;). </font></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 1&#58;  PAYMENTS AND OTHER PAYMENT TERMS.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Principal and Interest</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  The entire outstanding principal balance of this Note, together with all accrued interest thereon (the &#8220;Repayment Amount&#8221;), shall be due and payable on the Maturity Date.  Subject to prepayment as set forth in Section 1.2, any and all accrued interest shall be due and payable only on the Maturity Date.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.2&#160;&#160;&#160;&#160;Prepayments.  This Note may be prepaid in whole or in part at any time prior to the Maturity Date.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.3&#160;&#160;&#160;&#160;Cancellation of Note.  Upon payment in full of the outstanding principal balance of this Note and accrued and unpaid interest thereon, this Note will be automatically cancelled and the Company&#8217;s payment obligations hereunder will be extinguished. </font></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 2&#58;  TRANSFER RESTRICTIONS.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">2.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Transfer Restrictions</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  The Holder shall not sell, assign, transfer, pledge or dispose of all or any part of this Note, by operation of law or otherwise, nor may the Holder pledge as collateral this Note, in any case without the written consent of the Company.</font></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 3&#58;  EVENTS OF DEFAULT.</font></div><div style="margin-bottom:10pt;text-indent:77.1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">The occurrence of any of the following events with respect to the Company shall constitute an event of default under this Note (an &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Event of Default</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;).  The Company shall notify the Holder in writing within five (5) business days following the occurrence of any Event of Default.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.1       The Company fails to make any payment of principal or interest as required hereunder.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.2       Pursuant to or within the meaning of applicable law relating to insolvency or relief of debtors (a &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Bankruptcy Law</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;), the Company (a) commences a voluntary case or proceeding, (b) consents to the entry of an order for relief against it in an involuntary case, (c) consents to the appointment of a trustee, receiver, assignee, liquidator or similar official, (d) makes an assignment for the benefit of its creditors, or (e) admits in writing its inability to pay its debts as they become due.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.3       A court of competent jurisdiction enters an order or decree under any Bankruptcy Law that (a) is for relief against the Company in an involuntary case, (b) appoints a trustee, receiver, assignee, liquidator or similar official for the Company&#8217;s properties, or (c) orders the liquidation of the Company, and in each case the order or decree is not dismissed within ninety (90) days.</font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1</font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 4&#58;  REMEDIES IN THE EVENT OF DEFAULT.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.1       Upon the occurrence of an Event of Default, the Holder may, at its option, declare the aggregate amount of principal and interest outstanding under this Note immediately due and payable by providing written notice to the Company&#59; </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">provided</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">, that such demand will be in addition to all other rights and remedies of the Holder under this Note and under applicable law.</font></div><div style="margin-bottom:10pt;text-align:justify;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.2       The Company shall pay all reasonable costs and expenses incurred by or on behalf of the Holder in connection with the Holder&#8217;s exercise of any or all of its rights and remedies under this Note, including, without limitation, reasonable attorneys&#8217; fees.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.3       In the case of any Event of Default under this Note that is continuing and has not been waived in writing by the Holder, this Note will continue to bear interest at the interest rate otherwise in effect hereunder plus 2% </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:120%">per annum </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(but in any event not in excess of the maximum rate of interest permitted by applicable law).</font></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 5&#58;  MISCELLANEOUS.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Severability</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  In the event that any provisions of this Note are determined to be invalid or unenforceable by a court of competent jurisdiction, the remainder of this Note shall remain in full force and effect without such provision.  Any provision of this Note held invalid or unenforceable only in part or degree will remain in full force and effect to the extent not held invalid or unenforceable.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.2       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Waivers and Amendments&#59; Preservation of Remedies</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  No waiver by the Holderof any right or remedy under this Note shall be effective unless in a writing signed by the Holder. Neither the failure nor any delay in exercising any right, power or privilege under this Note will operate as a waiver of such right, power or privilege and no single or partial exercise of any such right, power or privilege by the Holder will preclude any other or further exercise of such right, power or privilege or the exercise of any other right, power or privilege.  To the maximum extent permitted by applicable law, (a) no claim or right of the Holder arising out of this Note may be discharged by the Holder, in whole or in part, by a waiver or renunciation of the claim or right unless in writing, signed by the Holder&#59; (b) no waiver that may be given by the Holder will be applicable except in the specific instance for which it is given&#59; and (c) no notice to or demand on the Company will be deemed to be a waiver of any obligation of the Company or of the right of the Holder to take further action without notice or demand as provided in this Note.  The Company hereby waives presentment, demand, protest and notice of dishonor, protest, diligence, filing suit, nonpayment and all other notice.  The rights and remedies herein provided are cumulative and are not exclusive of any rights or remedies which any party may otherwise have at law or in equity.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.3       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Headings</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  The captions to the several Articles and Sections hereof are not a part of this Note, but are included merely for convenience of reference only and shall not affect its meaning or interpretation.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.4       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Successors</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  This Note shall be binding upon the Company and its successors and permitted assigns.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.5       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Governing Law</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  This Note will be governed by the laws of the State of New York without regard to conflicts of laws principles.</font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:112%">&#91;Signature page follows&#93;</font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%">IN WITNESS WHEREOF, the Company has caused its duly authorized representative to execute this Note on the date first above written.</font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:216pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:130%">ENERGY FOCUS, INC.</font></div><div><font><br></font></div><div><font><br></font></div><div style="padding-left:216pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%">By&#58;&#160;&#160;&#160;&#160;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%;text-decoration:underline">&#47;s&#47; Lesley A. Matt</font></div><div style="padding-left:216pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%">Name&#58; Lesley A. Matt</font></div><div style="padding-left:216pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">Title&#58; Chief Executive Officer</font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:153.1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:112%">&#91;Signature Page to Promissory Note&#93;</font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.5
<SEQUENCE>5
<FILENAME>a20220930exhibit10510-q.htm
<DESCRIPTION>EX-10.5
<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 2022 Workiva -->
<title>Document</title></head><body><div id="i068333335c324aa994a07030f5ae580b_1"></div><div style="min-height:36pt;width:100%"><div style="-sec-extract:summary;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 10.5</font></div></div><div style="-sec-extract:summary;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:130%">ENERGY FOCUS, INC. PROMISSORY NOTE</font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">U.S. $350,000.00                                                                                            &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;November 9, 2022</font></div><div style="padding-left:432pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:112%">Solon, Ohio</font></div><div><font><br></font></div><div style="margin-bottom:10pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">FOR VALUE RECEIVED, the undersigned, </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">Energy Focus, Inc.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">, a Delaware corporation, with its principal office at 32000 Aurora Road, Suite B, Solon, Ohio 44139 (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Company</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;), unconditionally promises to pay to Mei-Yun Huang (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Lender</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;) or her permitted assigns, transferees and successors (collectively, the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Holder</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;), on August 9, 2023, at such place as may be designated in writing by the Holder, the principal sum of Three hundred Fifty Thousand Dollars (U.S. $350,000), together with interest thereon, which interest shall not be due and payable until the Maturity Date, accrued at a rate </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:120%">per annum </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">equal to 8.0% (computed on the basis of a three hundred sixty-five (365)-day year and based upon the number of days actually elapsed, from and after the date of this Note (the &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Original Issue Date</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;).  </font></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 1&#58;  PAYMENTS AND OTHER PAYMENT TERMS.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Principal and Interest</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  The entire outstanding principal balance of this Note, together with all accrued interest thereon (the &#8220;Repayment Amount&#8221;), shall be due and payable on the Maturity Date.  Subject to prepayment as set forth in Section 1.2, any and all accrued interest shall be due and payable only on the Maturity Date.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.2&#160;&#160;&#160;&#160;Prepayments.  This Note may be prepaid in whole or in part at any time prior to the Maturity Date.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.3&#160;&#160;&#160;&#160;Cancellation of Note.  Upon payment in full of the outstanding principal balance of this Note and accrued and unpaid interest thereon, this Note will be automatically cancelled and the Company&#8217;s payment obligations hereunder will be extinguished. </font></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 2&#58;  TRANSFER RESTRICTIONS.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">2.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Transfer Restrictions</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  The Holder shall not sell, assign, transfer, pledge or dispose of all or any part of this Note, by operation of law or otherwise, nor may the Holder pledge as collateral this Note, in any case without the written consent of the Company.</font></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 3&#58;  EVENTS OF DEFAULT.</font></div><div style="margin-bottom:10pt;text-indent:77.1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">The occurrence of any of the following events with respect to the Company shall constitute an event of default under this Note (an &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Event of Default</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;).  The Company shall notify the Holder in writing within five (5) business days following the occurrence of any Event of Default.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.1       The Company fails to make any payment of principal or interest as required hereunder.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.2       Pursuant to or within the meaning of applicable law relating to insolvency or relief of debtors (a &#8220;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:120%">Bankruptcy Law</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#8221;), the Company (a) commences a voluntary case or proceeding, (b) consents to the entry of an order for relief against it in an involuntary case, (c) consents to the appointment of a trustee, receiver, assignee, liquidator or similar official, (d) makes an assignment for the benefit of its creditors, or (e) admits in writing its inability to pay its debts as they become due.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.3       A court of competent jurisdiction enters an order or decree under any Bankruptcy Law that (a) is for relief against the Company in an involuntary case, (b) appoints a trustee, receiver, assignee, liquidator or similar official for the Company&#8217;s properties, or (c) orders the liquidation of the Company, and in each case the order or decree is not dismissed within ninety (90) days.</font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1</font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 4&#58;  REMEDIES IN THE EVENT OF DEFAULT.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.1       Upon the occurrence of an Event of Default, the Holder may, at its option, declare the aggregate amount of principal and interest outstanding under this Note immediately due and payable by providing written notice to the Company&#59; </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">provided</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">, that such demand will be in addition to all other rights and remedies of the Holder under this Note and under applicable law.</font></div><div style="margin-bottom:10pt;text-align:justify;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.2       The Company shall pay all reasonable costs and expenses incurred by or on behalf of the Holder in connection with the Holder&#8217;s exercise of any or all of its rights and remedies under this Note, including, without limitation, reasonable attorneys&#8217; fees.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.3       In the case of any Event of Default under this Note that is continuing and has not been waived in writing by the Holder, this Note will continue to bear interest at the interest rate otherwise in effect hereunder plus 2% </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:400;line-height:120%">per annum </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(but in any event not in excess of the maximum rate of interest permitted by applicable law).</font></div><div style="margin-bottom:10pt;text-indent:5.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">ARTICLE 5&#58;  MISCELLANEOUS.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.1       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Severability</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  In the event that any provisions of this Note are determined to be invalid or unenforceable by a court of competent jurisdiction, the remainder of this Note shall remain in full force and effect without such provision.  Any provision of this Note held invalid or unenforceable only in part or degree will remain in full force and effect to the extent not held invalid or unenforceable.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.2       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Waivers and Amendments&#59; Preservation of Remedies</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  No waiver by the Holderof any right or remedy under this Note shall be effective unless in a writing signed by the Holder. Neither the failure nor any delay in exercising any right, power or privilege under this Note will operate as a waiver of such right, power or privilege and no single or partial exercise of any such right, power or privilege by the Holder will preclude any other or further exercise of such right, power or privilege or the exercise of any other right, power or privilege.  To the maximum extent permitted by applicable law, (a) no claim or right of the Holder arising out of this Note may be discharged by the Holder, in whole or in part, by a waiver or renunciation of the claim or right unless in writing, signed by the Holder&#59; (b) no waiver that may be given by the Holder will be applicable except in the specific instance for which it is given&#59; and (c) no notice to or demand on the Company will be deemed to be a waiver of any obligation of the Company or of the right of the Holder to take further action without notice or demand as provided in this Note.  The Company hereby waives presentment, demand, protest and notice of dishonor, protest, diligence, filing suit, nonpayment and all other notice.  The rights and remedies herein provided are cumulative and are not exclusive of any rights or remedies which any party may otherwise have at law or in equity.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.3       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Headings</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  The captions to the several Articles and Sections hereof are not a part of this Note, but are included merely for convenience of reference only and shall not affect its meaning or interpretation.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.4       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Successors</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  This Note shall be binding upon the Company and its successors and permitted assigns.</font></div><div style="margin-bottom:10pt;text-indent:41.05pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.5       </font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%;text-decoration:underline">Governing Law</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.  This Note will be governed by the laws of the State of New York without regard to conflicts of laws principles.</font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:112%">&#91;Signature page follows&#93;</font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></div><div style="text-align:center;text-indent:176.45pt"><font><br></font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</font></div></div></div><hr style="page-break-after:always"><div style="min-height:36pt;width:100%"><div style="text-align:right"><font><br></font></div></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%">IN WITNESS WHEREOF, the Company has caused its duly authorized representative to execute this Note on the date first above written.</font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:216pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:130%">ENERGY FOCUS, INC.</font></div><div><font><br></font></div><div><font><br></font></div><div style="padding-left:216pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%">By&#58;&#160;&#160;&#160;&#160;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%;text-decoration:underline">&#47;s&#47; Lesley A. Matt</font></div><div style="padding-left:216pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%">Name&#58; Lesley A. Matt</font></div><div style="padding-left:216pt;text-indent:36pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:130%">Title&#58; Chief Executive Officer</font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div style="text-indent:153.1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-style:italic;font-weight:700;line-height:112%">&#91;Signature Page to Promissory Note&#93;</font></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"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>6
<FILENAME>a20220930exhibit31110-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 2022 Workiva -->
<title>Document</title></head><body><div id="i8ebc442e6d3d41aab355b1efe815e239_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, Lesley A. Matt, 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">I am 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 I 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">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; Lesley A. Matt&#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;Lesley A. Matt <br>&#160;&#160;&#160;&#160;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; November&#160;10, 2022 </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>7
<FILENAME>a20220930exhibit32110-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 2022 Workiva -->
<title>Document</title></head><body><div id="i50da54f57f59404db73e04dc347e2cd8_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 September&#160;30, 2022 (the &#8220;Report&#8221;), I, Lesley A. Matt, Chief Executive Officer of the Company 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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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; Lesley A. Matt</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%">Lesley A. Matt<br>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%">November 10, 2022</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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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 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><tr style="height:27pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:0 1pt"></td></tr><tr style="height:20pt"><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 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>8
<FILENAME>efoi-20220930.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2022 Workiva-->
<!--r:a82ef2f0-ede8-4d32-8f58-fa18bc743a3a,g:58e0cf05-7a74-4b84-ba8e-bd6d336a4f21-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:efoi="http://www.energyfocusinc.com/20220930" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.energyfocusinc.com/20220930">
  <xs:import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.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-20220930_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-20220930_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" 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-20220930_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-20220930_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://www.energyfocusinc.com/role/CoverPage">
        <link:definition>0000001 - 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>0000002 - 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>0000003 - 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="CondensedConsolidatedStatementsofOperations" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations">
        <link:definition>0000004 - Statement - Condensed Consolidated Statements 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="CondensedConsolidatedStatementsofChangesinStockholdersEquity" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity">
        <link:definition>0000005 - Statement - Condensed Consolidated Statements of Changes in 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="CondensedConsolidatedStatementsofCashFlows" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows">
        <link:definition>0000006 - Statement - Condensed Consolidated Statements of Cash Flows</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>0000007 - 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="BasisofPresentationandSummaryofSignificantAccountingPolicies" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies">
        <link:definition>0000008 - 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="Restructuring" roleURI="http://www.energyfocusinc.com/role/Restructuring">
        <link:definition>0000009 - 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="Inventories" roleURI="http://www.energyfocusinc.com/role/Inventories">
        <link:definition>0000010 - 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="PropertyandEquipment" roleURI="http://www.energyfocusinc.com/role/PropertyandEquipment">
        <link:definition>0000011 - 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="Leases" roleURI="http://www.energyfocusinc.com/role/Leases">
        <link:definition>0000012 - 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="Debt" roleURI="http://www.energyfocusinc.com/role/Debt">
        <link:definition>0000013 - 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="IncomeTaxes" roleURI="http://www.energyfocusinc.com/role/IncomeTaxes">
        <link:definition>0000014 - 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="StockholdersEquity" roleURI="http://www.energyfocusinc.com/role/StockholdersEquity">
        <link:definition>0000015 - 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="CommitmentsandContingencies" roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingencies">
        <link:definition>0000016 - 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="OtherIncome" roleURI="http://www.energyfocusinc.com/role/OtherIncome">
        <link:definition>0000017 - Disclosure - Other Income</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="RelatedPartyTransaction" roleURI="http://www.energyfocusinc.com/role/RelatedPartyTransaction">
        <link:definition>0000018 - Disclosure - Related Party Transaction</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>0000019 - 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="BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies">
        <link:definition>0000020 - 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>0000021 - 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="RestructuringTables" roleURI="http://www.energyfocusinc.com/role/RestructuringTables">
        <link:definition>0000022 - 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="InventoriesTables" roleURI="http://www.energyfocusinc.com/role/InventoriesTables">
        <link:definition>0000023 - 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="PropertyandEquipmentTables" roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentTables">
        <link:definition>0000024 - 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="LeasesTables" roleURI="http://www.energyfocusinc.com/role/LeasesTables">
        <link:definition>0000025 - 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="StockholdersEquityTables" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityTables">
        <link:definition>0000026 - 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="BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails">
        <link:definition>0000027 - 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>0000028 - 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="BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails">
        <link:definition>0000029 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Geographic 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="BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails">
        <link:definition>0000030 - 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>0000031 - 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>0000032 - 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>0000033 - 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>0000034 - 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="RestructuringNarrativeDetails" roleURI="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails">
        <link:definition>0000035 - 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>0000036 - 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="InventoriesInventoriesNetDetails" roleURI="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails">
        <link:definition>0000037 - 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>0000038 - 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="InventoriesNarrativeDetails" roleURI="http://www.energyfocusinc.com/role/InventoriesNarrativeDetails">
        <link:definition>0000039 - Disclosure - Inventories - 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="PropertyandEquipmentScheduleofPropertyandEquipmentDetails" roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails">
        <link:definition>0000040 - 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="LeasesNarrativeDetails" roleURI="http://www.energyfocusinc.com/role/LeasesNarrativeDetails">
        <link:definition>0000041 - 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>0000042 - 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>0000043 - 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>0000044 - 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>0000045 - 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="DebtCreditFacilitiesDetails" roleURI="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails">
        <link:definition>0000046 - 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="DebtPromissoryNotePayableDetails" roleURI="http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails">
        <link:definition>0000047 - Disclosure - Debt - Promissory Note Payable (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="DebtStreetervilleNotesDetails" roleURI="http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails">
        <link:definition>0000048 - Disclosure - Debt - Streeterville 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="DebtPPPLoanDetails" roleURI="http://www.energyfocusinc.com/role/DebtPPPLoanDetails">
        <link:definition>0000049 - 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="IncomeTaxesNarrativeDetails" roleURI="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails">
        <link:definition>0000050 - 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="StockholdersEquityJune2022andDecember2021PrivatePlacementDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails">
        <link:definition>0000051 - Disclosure - Stockholders' Equity - June 2022 and December 2021 Private Placement (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="StockholdersEquityJune2021EquityOfferingDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails">
        <link:definition>0000052 - Disclosure - Stockholders' Equity - June 2021 Equity Offering (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>0000053 - 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="StockholdersEquityJune2020EquityOfferingDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails">
        <link:definition>0000054 - Disclosure - Stockholders' Equity - June 2020 Equity Offering (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="StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails">
        <link:definition>0000055 - Disclosure - Stockholders' Equity - Outstanding Warrants from the January 2020 Equity Offering (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>0000056 - 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>0000057 - 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>0000058 - 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>0000059 - 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="CommitmentsandContingenciesDetails" roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails">
        <link:definition>0000060 - 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="OtherIncomeDetails" roleURI="http://www.energyfocusinc.com/role/OtherIncomeDetails">
        <link:definition>0000061 - Disclosure - Other Income (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="RelatedPartyTransactionDetails" roleURI="http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails">
        <link:definition>0000062 - Disclosure - Related Party Transaction (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="SubsequentEventsDetails" roleURI="http://www.energyfocusinc.com/role/SubsequentEventsDetails">
        <link:definition>0000063 - 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_ClassOfWarrantOrRightWarrantsIssuedPricePerShare" abstract="false" name="ClassOfWarrantOrRightWarrantsIssuedPricePerShare" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" abstract="false" name="LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="efoi_PromissoryNoteDomain" abstract="true" name="PromissoryNoteDomain" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_PartitionedNoteMember" abstract="true" name="PartitionedNoteMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_DistributorToTheU.S.NavyMember" abstract="true" name="DistributorToTheU.S.NavyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_InventoryFacilityMember" abstract="true" name="InventoryFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_BrilliantStartEnterpriseIncMember" abstract="true" name="BrilliantStartEnterpriseIncMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_OffshoreSupplierOneMember" abstract="true" name="OffshoreSupplierOneMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_PreFundedWarrantsMember" abstract="true" name="PreFundedWarrantsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_ShipbuilderForUSNavyMember" abstract="true" name="ShipbuilderForUSNavyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" abstract="false" name="NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="efoi_HuangNoteMember" abstract="true" name="HuangNoteMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types: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_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" abstract="false" name="AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityAnnualFacilityFee" abstract="false" name="LineOfCreditFacilityAnnualFacilityFee" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_CommercialProductsMember" abstract="true" name="CommercialProductsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_CommercialBuildingSystemsProviderMember" abstract="true" name="CommercialBuildingSystemsProviderMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_CommonStockClosingBidPriceThreshold" abstract="false" name="CommonStockClosingBidPriceThreshold" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="efoi_OctoberPartitionedNoteMember" abstract="true" name="OctoberPartitionedNoteMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types: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_TotalExpendituresMember" abstract="true" name="TotalExpendituresMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract" abstract="true" name="OperatingLeaseAssetsAndLiabilitiesLesseeAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="efoi_A2022PromissoryNoteMember" abstract="true" name="A2022PromissoryNoteMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" abstract="false" name="PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock" abstract="false" name="LeaseSupplementalBalanceSheetInformationTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" abstract="false" name="LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="efoi_January2020EquityOfferingMember" abstract="true" name="January2020EquityOfferingMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" abstract="false" name="DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="efoi_ReceivablesFacilityMember" abstract="true" name="ReceivablesFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_ExchangeAgreementMember" abstract="true" name="ExchangeAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_DistributorToTheUSDepartmentOfDefenseMember" abstract="true" name="DistributorToTheUSDepartmentOfDefenseMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_DebtInstrumentNumberOfCreditFacilities" abstract="false" name="DebtInstrumentNumberOfCreditFacilities" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="efoi_UltravioletCLightDisinfectionRobotsMember" abstract="true" name="UltravioletCLightDisinfectionRobotsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_EarningsPerShareBasicAndDilutedEPSAbstract" abstract="true" name="EarningsPerShareBasicAndDilutedEPSAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="efoi_A2021StreetervilleNoteMember" abstract="true" name="A2021StreetervilleNoteMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_RegionalCommercialLightingRetrofitCompanyMember" abstract="true" name="RegionalCommercialLightingRetrofitCompanyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_PaycheckProtectionProgramCARESActMember" abstract="true" name="PaycheckProtectionProgramCARESActMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" abstract="true" name="DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_WallStreetJournalHighestPrimeRateMember" abstract="true" name="WallStreetJournalHighestPrimeRateMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <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_USNavyMechanicalContractorMember" abstract="true" name="USNavyMechanicalContractorMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_PromissoryNoteAxis" abstract="true" name="PromissoryNoteAxis" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:dimensionItem" type="xbrli:stringItemType"/>
  <xs:element id="efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" abstract="false" name="StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" 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_June2022PrivatePlacementMember" abstract="true" name="June2022PrivatePlacementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_InventoryValuationReservesWriteOffs" abstract="false" name="InventoryValuationReservesWriteOffs" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <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_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" abstract="false" name="RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" abstract="false" name="SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <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_DebtInstrumentPrepaymentPremiumPercent" abstract="false" name="DebtInstrumentPrepaymentPremiumPercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityTerminationNoticePeriod" abstract="false" name="LineOfCreditFacilityTerminationNoticePeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="efoi_LesseeOperatingLeaseInterestRateEffectiveRate" abstract="false" name="LesseeOperatingLeaseInterestRateEffectiveRate" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <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_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" abstract="false" name="ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" nillable="true" xbrli:periodType="duration" 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="dtr-types:percentItemType"/>
  <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_PaymentsForPlacementAgentCommissions" abstract="false" name="PaymentsForPlacementAgentCommissions" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold" abstract="false" name="NumberOfConsecutiveDaysForBidPriceBelowThreshold" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="efoi_PercentageOfSeriesAPreferredStockEligibleToVote" abstract="false" name="PercentageOfSeriesAPreferredStockEligibleToVote" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" abstract="false" name="PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" nillable="true" xbrli:periodType="duration" 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_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" abstract="false" name="DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_InventoryReserveRollForward" abstract="true" name="InventoryReserveRollForward" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract" abstract="true" name="FinanceLeaseAssetsAndLiabilitiesLesseeAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" abstract="false" name="DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="efoi_FusionParkLLCMember" abstract="true" name="FusionParkLLCMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_EstimatedProceedsFromIssuanceOfWarrants" abstract="false" name="EstimatedProceedsFromIssuanceOfWarrants" 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="dtr-types:domainItemType"/>
  <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_OffshoreSupplierMember" abstract="true" name="OffshoreSupplierMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types: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_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" abstract="false" name="PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" nillable="true" xbrli:periodType="duration" 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_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" abstract="false" name="StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" abstract="false" name="ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_A2022StreetervilleNoteMember" abstract="true" name="A2022StreetervilleNoteMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_December2021PrivatePlacementMember" abstract="true" name="December2021PrivatePlacementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_StockIssuedDuringThePeriodSharesWarrantsExercised" abstract="false" name="StockIssuedDuringThePeriodSharesWarrantsExercised" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" abstract="false" name="LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <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_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" abstract="false" name="DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <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_InventoryValuationReservesRawMaterials" abstract="false" name="InventoryValuationReservesRawMaterials" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_January2020EquityOfferingPrivatePlacementMember" abstract="true" name="January2020EquityOfferingPrivatePlacementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types: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_ToolingMember" abstract="false" name="ToolingMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_DebtPrepaymentMaximumPercentage" abstract="false" name="DebtPrepaymentMaximumPercentage" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="efoi_MMMLEDProductsMember" abstract="true" name="MMMLEDProductsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_InstitutionalInvestorMember" abstract="true" name="InstitutionalInvestorMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <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_GainLossOnForgivenessOfDebt" abstract="false" name="GainLossOnForgivenessOfDebt" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_January2020InstitutionalInvestorMember" abstract="true" name="January2020InstitutionalInvestorMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="efoi_DebtInstrumentBaseRateVariable" abstract="false" name="DebtInstrumentBaseRateVariable" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>9
<FILENAME>efoi-20220930_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 2022 Workiva-->
<!--r:a82ef2f0-ede8-4d32-8f58-fa18bc743a3a,g:58e0cf05-7a74-4b84-ba8e-bd6d336a4f21-->
<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/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="efoi-20220930.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_AssetsCurrent_0a37cd2b-5f8b-4a69-a6da-8745fab57bcb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_a43a00d8-b380-4d2f-98a7-b0866900062f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_0a37cd2b-5f8b-4a69-a6da-8745fab57bcb" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_a43a00d8-b380-4d2f-98a7-b0866900062f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_e3f0f13b-217a-4420-94da-c6a70e25e635" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_0a37cd2b-5f8b-4a69-a6da-8745fab57bcb" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_e3f0f13b-217a-4420-94da-c6a70e25e635" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_2e3536bb-644b-4689-b318-df5c409006e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_0a37cd2b-5f8b-4a69-a6da-8745fab57bcb" xlink:to="loc_us-gaap_InventoryNet_2e3536bb-644b-4689-b318-df5c409006e1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepositsAssetsCurrent_357aace3-2d77-4a86-9f3d-cf7cae4ee058" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_0a37cd2b-5f8b-4a69-a6da-8745fab57bcb" xlink:to="loc_us-gaap_DepositsAssetsCurrent_357aace3-2d77-4a86-9f3d-cf7cae4ee058" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_3c28bb8a-d715-4032-b4e8-7889a596b74b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_0a37cd2b-5f8b-4a69-a6da-8745fab57bcb" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_3c28bb8a-d715-4032-b4e8-7889a596b74b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_5a3905b4-3352-410c-8825-ae75bde11f7d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_88672241-4e84-40ea-b787-20489491784b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_5a3905b4-3352-410c-8825-ae75bde11f7d" xlink:to="loc_us-gaap_LiabilitiesCurrent_88672241-4e84-40ea-b787-20489491784b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_7f62548f-3ad3-4e21-a620-559d12be8f54" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_5a3905b4-3352-410c-8825-ae75bde11f7d" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_7f62548f-3ad3-4e21-a620-559d12be8f54" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermNotesPayable_42245517-64fc-4104-83a1-b68d681bf835" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermNotesPayable"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_5a3905b4-3352-410c-8825-ae75bde11f7d" xlink:to="loc_us-gaap_LongTermNotesPayable_42245517-64fc-4104-83a1-b68d681bf835" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_40eb1a02-221e-4c30-8908-ccd14e980176" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_40eb1a02-221e-4c30-8908-ccd14e980176" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedSalesCommissionCurrent_5c747334-2910-4d48-ac43-0bf8ef2b2cea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedSalesCommissionCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_AccruedSalesCommissionCurrent_5c747334-2910-4d48-ac43-0bf8ef2b2cea" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableCurrent_9a262b47-a757-4736-82fc-9cacb19f9c11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_NotesPayableCurrent_9a262b47-a757-4736-82fc-9cacb19f9c11" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_499c133a-7aad-4ec7-b269-b9ba38446610" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_499c133a-7aad-4ec7-b269-b9ba38446610" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent_c3910530-3a27-4bfc-872e-c627590bc4ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_LinesOfCreditCurrent_c3910530-3a27-4bfc-872e-c627590bc4ef" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_2767db68-acf4-4fa4-a0dd-e49d71053624" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_2767db68-acf4-4fa4-a0dd-e49d71053624" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent_d1694799-0bb6-4488-9701-ff273388973c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_AccruedEmployeeBenefitsCurrent_d1694799-0bb6-4488-9701-ff273388973c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualCurrent_c269647f-e298-4cd9-a2cb-2be09edde843" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandardProductWarrantyAccrualCurrent"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualCurrent_c269647f-e298-4cd9-a2cb-2be09edde843" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_e23d6616-5147-402f-93f9-4ca23897cd8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_AccountsPayableCurrent_e23d6616-5147-402f-93f9-4ca23897cd8c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent_43ea906f-d0f4-4d95-b70e-2eac41a5510d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedProfessionalFeesCurrent"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent_43ea906f-d0f4-4d95-b70e-2eac41a5510d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_dec4705e-6d71-43c6-893a-d686ec8564e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_dec4705e-6d71-43c6-893a-d686ec8564e1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent_5c7a5a6b-1ac4-481e-b7fb-a43cc2275a4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableRelatedPartiesClassifiedCurrent"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_17f4ca3f-67eb-4383-a4e7-ac60719b80d3" xlink:to="loc_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent_5c7a5a6b-1ac4-481e-b7fb-a43cc2275a4d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_e8ed5faa-9a77-4370-9d97-458cef030560" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_64e33403-28f5-4b52-8f2e-dbf2dadb6046" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_e8ed5faa-9a77-4370-9d97-458cef030560" xlink:to="loc_us-gaap_PreferredStockValue_64e33403-28f5-4b52-8f2e-dbf2dadb6046" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_690b546c-641e-4255-a749-457fac64a2a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_e8ed5faa-9a77-4370-9d97-458cef030560" xlink:to="loc_us-gaap_CommonStockValue_690b546c-641e-4255-a749-457fac64a2a5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_820ae172-f81d-48ef-881d-beddbf6f6d8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_e8ed5faa-9a77-4370-9d97-458cef030560" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_820ae172-f81d-48ef-881d-beddbf6f6d8d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_8cc2ab5f-9724-43be-b8d2-e9b0c71a2fc4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_e8ed5faa-9a77-4370-9d97-458cef030560" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_8cc2ab5f-9724-43be-b8d2-e9b0c71a2fc4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_e28c1546-36aa-4ca1-8464-636bbc0e9457" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_e8ed5faa-9a77-4370-9d97-458cef030560" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_e28c1546-36aa-4ca1-8464-636bbc0e9457" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_d4a12fad-b47e-4094-b80d-77c2c017f35c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_4fcbd88d-0159-43de-b442-3053f4e32e35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_d4a12fad-b47e-4094-b80d-77c2c017f35c" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_4fcbd88d-0159-43de-b442-3053f4e32e35" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_67c460e1-9b61-4fc5-bce9-47037a40baeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_d4a12fad-b47e-4094-b80d-77c2c017f35c" xlink:to="loc_us-gaap_AssetsCurrent_67c460e1-9b61-4fc5-bce9-47037a40baeb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_db2393a1-d82c-4eb1-ac9f-e6f2ba4b1d78" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_d4a12fad-b47e-4094-b80d-77c2c017f35c" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_db2393a1-d82c-4eb1-ac9f-e6f2ba4b1d78" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_a5294d05-c884-407a-9f41-a054c028297f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_dd2fc57e-d7bb-4889-a10f-bc62e23f280a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_a5294d05-c884-407a-9f41-a054c028297f" xlink:to="loc_us-gaap_Liabilities_dd2fc57e-d7bb-4889-a10f-bc62e23f280a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_aeed54b2-2caa-408e-ac3f-2cfea7d08d30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_a5294d05-c884-407a-9f41-a054c028297f" xlink:to="loc_us-gaap_StockholdersEquity_aeed54b2-2caa-408e-ac3f-2cfea7d08d30" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="efoi-20220930.xsd#CondensedConsolidatedStatementsofOperations"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_19ca4117-789d-4431-9afc-5ebc22374bda" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_8d4bd930-3dc5-45bb-bae9-014d1d874410" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_19ca4117-789d-4431-9afc-5ebc22374bda" xlink:to="loc_us-gaap_Revenues_8d4bd930-3dc5-45bb-bae9-014d1d874410" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_5136fda7-a973-4727-b872-782ccdc11b40" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_19ca4117-789d-4431-9afc-5ebc22374bda" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_5136fda7-a973-4727-b872-782ccdc11b40" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_802b9dec-9336-4413-bf04-21802bd2cd22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncome_e0c1cf35-b270-4e09-bb96-b173ca4abc5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncome"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_802b9dec-9336-4413-bf04-21802bd2cd22" xlink:to="loc_us-gaap_OtherNonoperatingIncome_e0c1cf35-b270-4e09-bb96-b173ca4abc5d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingExpense_5c9c0be5-71f6-40e5-be7b-da534bda513b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_802b9dec-9336-4413-bf04-21802bd2cd22" xlink:to="loc_us-gaap_OtherNonoperatingExpense_5c9c0be5-71f6-40e5-be7b-da534bda513b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_a9876c60-908a-4df9-b3ce-15b1bd1fc132" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_802b9dec-9336-4413-bf04-21802bd2cd22" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_a9876c60-908a-4df9-b3ce-15b1bd1fc132" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_2f5eb482-3129-4265-8606-354cbd4e18ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_802b9dec-9336-4413-bf04-21802bd2cd22" xlink:to="loc_us-gaap_InterestExpense_2f5eb482-3129-4265-8606-354cbd4e18ad" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_838f955f-c38b-4b93-bf7c-7c9b3b86a013" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_802b9dec-9336-4413-bf04-21802bd2cd22" xlink:to="loc_us-gaap_OperatingIncomeLoss_838f955f-c38b-4b93-bf7c-7c9b3b86a013" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_f9b400f5-c7a4-4252-805d-67308c62dc79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_55f39aee-7635-4eae-90b3-06729d45a5fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_f9b400f5-c7a4-4252-805d-67308c62dc79" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_55f39aee-7635-4eae-90b3-06729d45a5fe" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_9f4ccc94-9ae4-41f6-92ec-c95ae2d89732" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_f9b400f5-c7a4-4252-805d-67308c62dc79" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_9f4ccc94-9ae4-41f6-92ec-c95ae2d89732" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCosts_2e9f275a-d93b-4441-9a0a-00c2a4277d0e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_f9b400f5-c7a4-4252-805d-67308c62dc79" xlink:to="loc_us-gaap_RestructuringCosts_2e9f275a-d93b-4441-9a0a-00c2a4277d0e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnDispositionOfAssets1_4910a90a-3ef8-4759-a097-f5764e37849b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_f9b400f5-c7a4-4252-805d-67308c62dc79" xlink:to="loc_us-gaap_GainLossOnDispositionOfAssets1_4910a90a-3ef8-4759-a097-f5764e37849b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_4492c2c3-9a66-499b-a7a8-733a014ea35e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_4454ef23-cd09-4eda-9791-ba250b9e7c11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_4492c2c3-9a66-499b-a7a8-733a014ea35e" xlink:to="loc_us-gaap_GrossProfit_4454ef23-cd09-4eda-9791-ba250b9e7c11" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_c24db946-414e-4b51-8995-c59805e6b3a4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_4492c2c3-9a66-499b-a7a8-733a014ea35e" xlink:to="loc_us-gaap_OperatingExpenses_c24db946-414e-4b51-8995-c59805e6b3a4" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="efoi-20220930.xsd#CondensedConsolidatedStatementsofCashFlows"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d271fa66-f2d6-4470-bdff-0ccdde188490" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_997c5e57-ff3f-4568-b5eb-9f9a79b7fe30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_d271fa66-f2d6-4470-bdff-0ccdde188490" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_997c5e57-ff3f-4568-b5eb-9f9a79b7fe30" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_c3b1080c-553c-4313-8681-ce7a6883c033" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_d271fa66-f2d6-4470-bdff-0ccdde188490" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_c3b1080c-553c-4313-8681-ce7a6883c033" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_af4e6ed3-6c1c-40a3-90af-85a026a1e926" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_d271fa66-f2d6-4470-bdff-0ccdde188490" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_af4e6ed3-6c1c-40a3-90af-85a026a1e926" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_1bf53e29-0049-44dc-8038-02eca480feb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_1bf53e29-0049-44dc-8038-02eca480feb1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_0a305d10-af4e-4982-a578-b0cbea47acf4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_0a305d10-af4e-4982-a578-b0cbea47acf4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_80735031-c8de-4bf9-acb0-3b4e0d1481be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_80735031-c8de-4bf9-acb0-3b4e0d1481be" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_IncreaseDecreaseInProvisionForWarranties_e539f29b-e26a-46de-8cad-1a87b9ff2c1a" xlink:href="efoi-20220930.xsd#efoi_IncreaseDecreaseInProvisionForWarranties"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_efoi_IncreaseDecreaseInProvisionForWarranties_e539f29b-e26a-46de-8cad-1a87b9ff2c1a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_ff8558c1-b57e-47fd-8eb4-1de589b2921d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWriteDown"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_InventoryWriteDown_ff8558c1-b57e-47fd-8eb4-1de589b2921d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_dc390c13-57bc-430e-91ab-228c74e036c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInDepositOtherAssets"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_dc390c13-57bc-430e-91ab-228c74e036c1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_9c365211-074b-4273-a75f-827a847bdae1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="7" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_9c365211-074b-4273-a75f-827a847bdae1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncome_4a5cec8a-95de-45fd-866f-1f5eb7732935" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncome"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_OtherNoncashIncome_4a5cec8a-95de-45fd-866f-1f5eb7732935" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_657dc4f5-289f-4cc4-9e43-35699ed10b14" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_657dc4f5-289f-4cc4-9e43-35699ed10b14" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_013e54a8-d514-4bfd-a325-b016acf61600" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_013e54a8-d514-4bfd-a325-b016acf61600" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_df09ddb3-08ee-4a84-b391-5e70295c001a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="11" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_df09ddb3-08ee-4a84-b391-5e70295c001a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_0a1304b4-b775-4f7d-b990-1012c22da509" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_0a1304b4-b775-4f7d-b990-1012c22da509" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_11c04f61-6595-4fe7-a59e-f6a211bcc5c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="13" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_ShareBasedCompensation_11c04f61-6595-4fe7-a59e-f6a211bcc5c5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_79ed9e33-d80a-4d24-b940-b70406a290eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:calculationArc order="14" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_Depreciation_79ed9e33-d80a-4d24-b940-b70406a290eb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium_d68c4d5a-5539-4a3c-86cc-052d6e30afd0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfDebtDiscountPremium"/>
    <link:calculationArc order="15" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_AmortizationOfDebtDiscountPremium_d68c4d5a-5539-4a3c-86cc-052d6e30afd0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_dd73391b-9460-4af9-8c2a-8aa9a891363d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:calculationArc order="16" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_91e02867-ac6a-40c1-b185-f7bd5d498fb1" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_dd73391b-9460-4af9-8c2a-8aa9a891363d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_34a3340e-3c04-47cf-a0ef-0b4fa4030065" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0c766dd2-10be-4b32-81ac-af73c29782ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_34a3340e-3c04-47cf-a0ef-0b4fa4030065" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0c766dd2-10be-4b32-81ac-af73c29782ea" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5b59fc11-b586-4680-9470-224e39603ecb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_9e61ba7c-a92d-4050-af1f-e3a36b57b796" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_9e61ba7c-a92d-4050-af1f-e3a36b57b796" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_580c299c-bc59-44c7-88e1-ca7b9eeb6e51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_580c299c-bc59-44c7-88e1-ca7b9eeb6e51" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_651740e4-7b46-4612-b606-2e8ab51b4c63" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_651740e4-7b46-4612-b606-2e8ab51b4c63" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_15ea6271-8edd-4ea9-bab4-66be426970e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_15ea6271-8edd-4ea9-bab4-66be426970e0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_b1e6e248-4e0a-4470-bd69-ce32649a5fad" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_b1e6e248-4e0a-4470-bd69-ce32649a5fad" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_87a5d0d3-e2e5-41c7-8d26-5d936a0acc61" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_87a5d0d3-e2e5-41c7-8d26-5d936a0acc61" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromNotesPayable_5043e287-2b69-49b0-b834-a6cea45ea53c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_us-gaap_ProceedsFromNotesPayable_5043e287-2b69-49b0-b834-a6cea45ea53c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_6339affd-a8a8-41ed-b91a-64f65dffbb72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_6339affd-a8a8-41ed-b91a-64f65dffbb72" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts_3f4f12d0-4348-424a-ab5d-4170cb9e322c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_us-gaap_PaymentsOfFinancingCosts_3f4f12d0-4348-424a-ab5d-4170cb9e322c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_63edc6ac-2a23-4625-a353-aff8cddd0f87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_5b59fc11-b586-4680-9470-224e39603ecb" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_63edc6ac-2a23-4625-a353-aff8cddd0f87" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_9d6cfe67-01fe-4917-9fd6-ef99a6cc419b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_9244bfe7-48eb-4627-bd07-2e86e190b660" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_9d6cfe67-01fe-4917-9fd6-ef99a6cc419b" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_9244bfe7-48eb-4627-bd07-2e86e190b660" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_cb6e3149-52a5-470b-8635-0ace6766def8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_9d6cfe67-01fe-4917-9fd6-ef99a6cc419b" xlink:to="loc_us-gaap_NetIncomeLoss_cb6e3149-52a5-470b-8635-0ace6766def8" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails" xlink:type="simple" xlink:href="efoi-20220930.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_885dcd06-e443-4953-adff-3a4d3772e686" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods_571fdf08-80a4-4f87-9ff4-4a1deab7f8e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_885dcd06-e443-4953-adff-3a4d3772e686" xlink:to="loc_us-gaap_InventoryFinishedGoods_571fdf08-80a4-4f87-9ff4-4a1deab7f8e2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials_6de6ee2f-7391-4123-aca4-bff87e1cc1eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_885dcd06-e443-4953-adff-3a4d3772e686" xlink:to="loc_us-gaap_InventoryRawMaterials_6de6ee2f-7391-4123-aca4-bff87e1cc1eb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserves_d7a583b6-d6aa-441e-969e-4de3d3e52607" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_885dcd06-e443-4953-adff-3a4d3772e686" xlink:to="loc_us-gaap_InventoryValuationReserves_d7a583b6-d6aa-441e-969e-4de3d3e52607" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="simple" xlink:href="efoi-20220930.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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_70b792c2-5b96-4c11-b19d-5f49307364c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_0b9d797a-2992-4a10-ad2f-8726e5c1d263" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_70b792c2-5b96-4c11-b19d-5f49307364c1" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_0b9d797a-2992-4a10-ad2f-8726e5c1d263" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization_367e8831-c314-469c-98d9-68bd2440b141" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_70b792c2-5b96-4c11-b19d-5f49307364c1" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization_367e8831-c314-469c-98d9-68bd2440b141" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_a2814fc8-eb52-4a5b-8c12-1ec4a74e11b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_72a40b1d-574c-4840-9b5f-459a420a7f94" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_a2814fc8-eb52-4a5b-8c12-1ec4a74e11b7" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_72a40b1d-574c-4840-9b5f-459a420a7f94" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_57501164-dd2d-4fce-9059-c83c05db3e7f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_a2814fc8-eb52-4a5b-8c12-1ec4a74e11b7" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_57501164-dd2d-4fce-9059-c83c05db3e7f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#LeasesComponentsofLeaseCostDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_65a595bf-e86f-488f-a752-b7bc398534d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_b8174dee-15d8-4adf-8c2e-d3486ed1c03d" xlink:href="efoi-20220930.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_65a595bf-e86f-488f-a752-b7bc398534d0" xlink:to="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_b8174dee-15d8-4adf-8c2e-d3486ed1c03d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_4b0e15f1-aa32-456a-8ba2-51c0019d096a" xlink:href="efoi-20220930.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_65a595bf-e86f-488f-a752-b7bc398534d0" xlink:to="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_4b0e15f1-aa32-456a-8ba2-51c0019d096a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_b68d7b0f-0d21-4ace-ba61-40dd60470038" xlink:href="efoi-20220930.xsd#efoi_OperatingLeaseCostNetOfSubleaseIncome"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubleaseIncome_d091915b-4e39-4654-9885-2dbdb2074f9b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_b68d7b0f-0d21-4ace-ba61-40dd60470038" xlink:to="loc_us-gaap_SubleaseIncome_d091915b-4e39-4654-9885-2dbdb2074f9b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_18d2c8f5-e117-4158-aa53-09834039ea4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_b68d7b0f-0d21-4ace-ba61-40dd60470038" xlink:to="loc_us-gaap_OperatingLeaseCost_18d2c8f5-e117-4158-aa53-09834039ea4a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_7f8d0045-7e49-4ebf-86e0-30636e5cd9d6" xlink:href="efoi-20220930.xsd#efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseSubleaseIncome_ddf0123e-0ed5-448e-887a-7d4313e9cd6c" xlink:href="efoi-20220930.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_7f8d0045-7e49-4ebf-86e0-30636e5cd9d6" xlink:to="loc_efoi_RestructuredLeaseSubleaseIncome_ddf0123e-0ed5-448e-887a-7d4313e9cd6c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCost_88904307-b985-463a-8a96-6bc1bee1609f" xlink:href="efoi-20220930.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_7f8d0045-7e49-4ebf-86e0-30636e5cd9d6" xlink:to="loc_efoi_RestructuredLeaseOperatingLeaseCost_88904307-b985-463a-8a96-6bc1bee1609f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#LeasesScheduleofSupplementalBalanceSheetInformationDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAsset_63c52c58-bce3-4b6f-ab52-0cc6bf5641bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetGross_4eed5bab-5931-4a78-8b27-a5111faf5805" xlink:href="efoi-20220930.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_63c52c58-bce3-4b6f-ab52-0cc6bf5641bf" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetGross_4eed5bab-5931-4a78-8b27-a5111faf5805" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_eb8e3c8a-e47d-4aea-a914-3304c3ebc535" xlink:href="efoi-20220930.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_63c52c58-bce3-4b6f-ab52-0cc6bf5641bf" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_eb8e3c8a-e47d-4aea-a914-3304c3ebc535" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails" xlink:type="simple" xlink:href="efoi-20220930.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_LesseeOperatingLeaseLiabilityPaymentsDue_16c42577-20da-48ad-9f54-57e0ea58e867" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_20aaa352-2b25-4ce4-a4cc-804d4abec21c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_16c42577-20da-48ad-9f54-57e0ea58e867" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_20aaa352-2b25-4ce4-a4cc-804d4abec21c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_ade3a35d-4353-48e5-92c4-0526fc6b4f1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_16c42577-20da-48ad-9f54-57e0ea58e867" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_ade3a35d-4353-48e5-92c4-0526fc6b4f1c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_c9e29b48-f850-4841-8110-5e8ccde8e656" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_16c42577-20da-48ad-9f54-57e0ea58e867" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_c9e29b48-f850-4841-8110-5e8ccde8e656" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_bfd9f030-627e-4068-b58a-2c67f2d347e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_16c42577-20da-48ad-9f54-57e0ea58e867" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_bfd9f030-627e-4068-b58a-2c67f2d347e7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_0b6994ca-e1ff-4072-9c84-b43e4c78a1d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_16c42577-20da-48ad-9f54-57e0ea58e867" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_0b6994ca-e1ff-4072-9c84-b43e4c78a1d3" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>efoi-20220930_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 2022 Workiva-->
<!--r:a82ef2f0-ede8-4d32-8f58-fa18bc743a3a,g:58e0cf05-7a74-4b84-ba8e-bd6d336a4f21-->
<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/CondensedConsolidatedBalanceSheetsParentheticals" xlink:type="simple" xlink:href="efoi-20220930.xsd#CondensedConsolidatedBalanceSheetsParentheticals"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals" xlink:type="extended" id="ida797dcec23b45898e226be8881ce035_CondensedConsolidatedBalanceSheetsParentheticals">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_10b564d3-8c66-40eb-b26f-c421473c5f5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_10b564d3-8c66-40eb-b26f-c421473c5f5d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_338f9e77-e937-451f-95ab-405a51525565" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_338f9e77-e937-451f-95ab-405a51525565" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_df9208ab-1a66-4c6a-a9a7-75fa80c535c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_df9208ab-1a66-4c6a-a9a7-75fa80c535c4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued_f5f0f2c6-dc34-41c2-ae08-7b255bbb6318" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_PreferredStockSharesIssued_f5f0f2c6-dc34-41c2-ae08-7b255bbb6318" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_39e67ef4-f3fe-4cf8-afb8-a44cdeb6f494" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_39e67ef4-f3fe-4cf8-afb8-a44cdeb6f494" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_cd10887e-a62e-4560-9f32-591e80b12806" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_cd10887e-a62e-4560-9f32-591e80b12806" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_a4f1d311-fc21-41bb-9bb4-828d02f4ef52" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_a4f1d311-fc21-41bb-9bb4-828d02f4ef52" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_f17c14cd-1b17-4d9f-b1bb-722dab471cc0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_CommonStockSharesIssued_f17c14cd-1b17-4d9f-b1bb-722dab471cc0" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_0e67a641-bdbd-4b5f-ae51-d3bb3fa433e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_0e67a641-bdbd-4b5f-ae51-d3bb3fa433e3" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_b16dbfd3-e45a-4446-902e-c84ef59ecbc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_StatementTable_b16dbfd3-e45a-4446-902e-c84ef59ecbc1" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_4a562973-90b2-4736-bbf3-bc20e32df6b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_b16dbfd3-e45a-4446-902e-c84ef59ecbc1" xlink:to="loc_us-gaap_StatementClassOfStockAxis_4a562973-90b2-4736-bbf3-bc20e32df6b7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_4a562973-90b2-4736-bbf3-bc20e32df6b7_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_4a562973-90b2-4736-bbf3-bc20e32df6b7" xlink:to="loc_us-gaap_ClassOfStockDomain_4a562973-90b2-4736-bbf3-bc20e32df6b7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_6eb4a3e5-d177-4793-9122-187360d1454e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_4a562973-90b2-4736-bbf3-bc20e32df6b7" xlink:to="loc_us-gaap_ClassOfStockDomain_6eb4a3e5-d177-4793-9122-187360d1454e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_07d4dba8-c10c-4d14-aaa5-0617525b0261" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_6eb4a3e5-d177-4793-9122-187360d1454e" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_07d4dba8-c10c-4d14-aaa5-0617525b0261" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity" xlink:type="simple" xlink:href="efoi-20220930.xsd#CondensedConsolidatedStatementsofChangesinStockholdersEquity"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity" xlink:type="extended" id="i9a9c5a0b9c284e8abcdbee80300ff89b_CondensedConsolidatedStatementsofChangesinStockholdersEquity">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_aeea778f-aa19-4d65-b928-3c431a627b60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_aeea778f-aa19-4d65-b928-3c431a627b60" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_78e779c5-f274-4f44-89a8-29c237c95436" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_SharesOutstanding_78e779c5-f274-4f44-89a8-29c237c95436" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_60b486d6-ddb7-4fb6-8779-6e730adf4cca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockholdersEquity_60b486d6-ddb7-4fb6-8779-6e730adf4cca" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_7da2cd86-52bf-4802-92af-9a8514dec156" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_7da2cd86-52bf-4802-92af-9a8514dec156" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_63151392-05b3-4476-b0cb-da1968c7f4ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_63151392-05b3-4476-b0cb-da1968c7f4ca" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_ca56ca30-7aae-46d8-ad56-c4195a9b9495" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_ca56ca30-7aae-46d8-ad56-c4195a9b9495" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised_0845cd16-f10c-4a52-9c75-6573785681a1" xlink:href="efoi-20220930.xsd#efoi_StockIssuedDuringThePeriodSharesWarrantsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised_0845cd16-f10c-4a52-9c75-6573785681a1" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_e18ca185-8f6b-47d5-b45f-e0775f443bfe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_e18ca185-8f6b-47d5-b45f-e0775f443bfe" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_5c3dc22d-9566-412c-9f64-873853584424" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_5c3dc22d-9566-412c-9f64-873853584424" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_f58882e1-19aa-4c88-aba2-832dcace74f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_f58882e1-19aa-4c88-aba2-832dcace74f4" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_be70f9af-49f0-4ce4-9e1e-4340169dd032" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_be70f9af-49f0-4ce4-9e1e-4340169dd032" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_2e6efade-e889-47c9-ba28-e974bd4160f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_2e6efade-e889-47c9-ba28-e974bd4160f3" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_86b5e398-8742-489f-b716-1502182d8457" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_86b5e398-8742-489f-b716-1502182d8457" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4cea1786-3b13-496f-957a-35d0b0d3305f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4cea1786-3b13-496f-957a-35d0b0d3305f" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_6a3940c2-13b3-47a6-a5c7-19e9dbc2fee5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_NetIncomeLoss_6a3940c2-13b3-47a6-a5c7-19e9dbc2fee5" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_b3ee5b23-e712-4652-b159-7e23927f2905" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_e182718b-fb46-4a5d-bf74-78c9a14ab65e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_911c95b7-745e-4fd7-ab67-166fcff8878e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_a6676667-3845-45b4-98c4-4ad8504c7d4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_aeea778f-aa19-4d65-b928-3c431a627b60" xlink:to="loc_us-gaap_StatementTable_a6676667-3845-45b4-98c4-4ad8504c7d4a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_de214a61-3008-4839-b1d1-368104fd9293" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_a6676667-3845-45b4-98c4-4ad8504c7d4a" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_de214a61-3008-4839-b1d1-368104fd9293" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_de214a61-3008-4839-b1d1-368104fd9293_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_de214a61-3008-4839-b1d1-368104fd9293" xlink:to="loc_us-gaap_EquityComponentDomain_de214a61-3008-4839-b1d1-368104fd9293_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_de214a61-3008-4839-b1d1-368104fd9293" xlink:to="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_c68ade18-ee97-4783-8db6-638c0a4f0f0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_PreferredStockMember_c68ade18-ee97-4783-8db6-638c0a4f0f0f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_76d2d60f-2959-46d7-ae2b-84f0c65f4524" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_CommonStockMember_76d2d60f-2959-46d7-ae2b-84f0c65f4524" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_e4fd1f17-86c3-45e7-b8d1-3690133fe480" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_e4fd1f17-86c3-45e7-b8d1-3690133fe480" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7333ee34-20c0-434c-9f90-f7759505311a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7333ee34-20c0-434c-9f90-f7759505311a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_bbaa0208-3e3d-4645-9e4f-af7c1ed71423" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_RetainedEarningsMember_bbaa0208-3e3d-4645-9e4f-af7c1ed71423" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="efoi-20220930.xsd#CondensedConsolidatedStatementsofCashFlows"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="extended" id="ibebfd8b09a504dc4ba4e9f9530dcd537_CondensedConsolidatedStatementsofCashFlows">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_1f0afda6-33a5-4146-815f-cf2f3ac2ca39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1f0afda6-33a5-4146-815f-cf2f3ac2ca39" xlink:to="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_0a316d5c-daac-473f-929f-0118fda945fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:to="loc_us-gaap_NetIncomeLoss_0a316d5c-daac-473f-929f-0118fda945fb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncome_39c0e1d1-bf44-4160-b844-65c95bbff50d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncome"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_OtherNoncashIncome_39c0e1d1-bf44-4160-b844-65c95bbff50d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_31ada355-4921-455a-851d-1015ba77ec16" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_31ada355-4921-455a-851d-1015ba77ec16" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_fc7c730a-387b-442b-9a11-45a3a52fa18f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_Depreciation_fc7c730a-387b-442b-9a11-45a3a52fa18f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_591fea97-040c-4b54-8a35-4788aaa241e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_ShareBasedCompensation_591fea97-040c-4b54-8a35-4788aaa241e1" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_70b0a4fa-4f4a-49f4-8702-3ce5e7d036dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_70b0a4fa-4f4a-49f4-8702-3ce5e7d036dd" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_e7dfaaac-d3e4-43a7-91ee-7f504a6727d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWriteDown"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_InventoryWriteDown_e7dfaaac-d3e4-43a7-91ee-7f504a6727d8" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_IncreaseDecreaseInProvisionForWarranties_22e0ab23-e90a-4589-9599-28f58347b07b" xlink:href="efoi-20220930.xsd#efoi_IncreaseDecreaseInProvisionForWarranties"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_efoi_IncreaseDecreaseInProvisionForWarranties_22e0ab23-e90a-4589-9599-28f58347b07b" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium_0301ba3a-08cc-4e69-a8d2-4205779d4239" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfDebtDiscountPremium"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_AmortizationOfDebtDiscountPremium_0301ba3a-08cc-4e69-a8d2-4205779d4239" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_f26beb7a-949d-4d04-b598-f3e9a4113cc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_f26beb7a-949d-4d04-b598-f3e9a4113cc5" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_379e641c-97f7-4d92-9b52-f45a7d69182e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_379e641c-97f7-4d92-9b52-f45a7d69182e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_6b4ed8d1-c599-4515-99ca-3aec7a994db9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_6b4ed8d1-c599-4515-99ca-3aec7a994db9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_7f165525-2880-41a9-b4d6-75e17e1b250a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInDepositOtherAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_7f165525-2880-41a9-b4d6-75e17e1b250a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_6033c98b-5904-4df9-af68-4746bada7b9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_6033c98b-5904-4df9-af68-4746bada7b9f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_f1ff69a5-b91f-4bc1-95fc-bfd64fab2da0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_f1ff69a5-b91f-4bc1-95fc-bfd64fab2da0" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_65c8ed3d-8c65-46c0-b6a3-f8907e5eebde" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_65c8ed3d-8c65-46c0-b6a3-f8907e5eebde" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_c53719d0-6925-41e6-b3c2-214920878f87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_c53719d0-6925-41e6-b3c2-214920878f87" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_34222c7e-04b0-4aa2-b4e9-fd4cd1009e5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_34222c7e-04b0-4aa2-b4e9-fd4cd1009e5e" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_a51a2b62-e6f7-418b-a9eb-b641a29d90c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_a51a2b62-e6f7-418b-a9eb-b641a29d90c8" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d31ae110-f571-468f-b34e-678bd4180630" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d31ae110-f571-468f-b34e-678bd4180630" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9e5c9f5c-1a40-452e-a5d9-07b6801838cc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d31ae110-f571-468f-b34e-678bd4180630" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9e5c9f5c-1a40-452e-a5d9-07b6801838cc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_95ef71fd-4dc9-406d-aa09-f94cfc0d6201" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d31ae110-f571-468f-b34e-678bd4180630" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_95ef71fd-4dc9-406d-aa09-f94cfc0d6201" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_03b2fb2c-28c4-44ec-a76f-1814b053e28b" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_03b2fb2c-28c4-44ec-a76f-1814b053e28b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_689472b8-c966-4ee1-8805-9aac3c34f8b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_689472b8-c966-4ee1-8805-9aac3c34f8b3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_5f0e060e-2e78-44f9-a5cb-16011e5a1a35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_5f0e060e-2e78-44f9-a5cb-16011e5a1a35" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_306facf6-1bf8-436a-9cec-3a9d03adcafb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_306facf6-1bf8-436a-9cec-3a9d03adcafb" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_5784ec37-7a98-490c-b3fa-3a1a0fce5b4a" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_5784ec37-7a98-490c-b3fa-3a1a0fce5b4a" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_bb5a0610-7bdf-4b89-a713-631c83bfdda0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_bb5a0610-7bdf-4b89-a713-631c83bfdda0" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromNotesPayable_263e1f21-2df8-45a4-b035-4008c48e52f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_ProceedsFromNotesPayable_263e1f21-2df8-45a4-b035-4008c48e52f4" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_69d4f125-e7da-4f98-b046-f0a492979ae5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_69d4f125-e7da-4f98-b046-f0a492979ae5" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts_06c5b1c6-dea8-4226-87e5-543237d119bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_PaymentsOfFinancingCosts_06c5b1c6-dea8-4226-87e5-543237d119bf" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_d0a8b314-227e-4774-93dd-c86da2cfd814" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_d0a8b314-227e-4774-93dd-c86da2cfd814" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_016cd106-467d-45e2-a70e-f530d60e7586" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_016cd106-467d-45e2-a70e-f530d60e7586" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_bc55737b-81e5-4373-a19f-fe34c0cc1c7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_bc55737b-81e5-4373-a19f-fe34c0cc1c7e" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_4d7dae0d-22a4-4115-beca-92b0f8591f87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_4d7dae0d-22a4-4115-beca-92b0f8591f87" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_38394684-d486-4da5-8652-4566907ba211" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_1567cfb1-ab00-4641-8b11-681a3ce4d406" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1f0afda6-33a5-4146-815f-cf2f3ac2ca39" xlink:to="loc_us-gaap_StatementTable_1567cfb1-ab00-4641-8b11-681a3ce4d406" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_1567cfb1-ab00-4641-8b11-681a3ce4d406" xlink:to="loc_us-gaap_DebtInstrumentAxis_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_5dbb1f93-9287-45f2-9e72-231012973367" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_5dbb1f93-9287-45f2-9e72-231012973367" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2021StreetervilleNoteMember_6990a362-52a0-42b9-8efc-d36aa59a1674" xlink:href="efoi-20220930.xsd#efoi_A2021StreetervilleNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_5dbb1f93-9287-45f2-9e72-231012973367" xlink:to="loc_efoi_A2021StreetervilleNoteMember_6990a362-52a0-42b9-8efc-d36aa59a1674" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022StreetervilleNoteMember_d534786b-7c5b-48eb-966a-63a44e67d60a" xlink:href="efoi-20220930.xsd#efoi_A2022StreetervilleNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_5dbb1f93-9287-45f2-9e72-231012973367" xlink:to="loc_efoi_A2022StreetervilleNoteMember_d534786b-7c5b-48eb-966a-63a44e67d60a" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" xlink:type="extended" id="i5adc2bc4de2a482ba6722d386b942356_BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_9e00d75d-d4a3-4698-a0cf-c520d4e5fb69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_aacdcc0e-7d16-48c2-80eb-57b2a38f322d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_9e00d75d-d4a3-4698-a0cf-c520d4e5fb69" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_aacdcc0e-7d16-48c2-80eb-57b2a38f322d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_9e00d75d-d4a3-4698-a0cf-c520d4e5fb69" xlink:to="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_srt_MajorCustomersAxis_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9" xlink:to="loc_srt_NameOfMajorCustomerDomain_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9" xlink:to="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember_e636baad-616b-488b-b501-6d31fbca0222" xlink:href="efoi-20220930.xsd#efoi_RegionalCommercialLightingRetrofitCompanyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember_e636baad-616b-488b-b501-6d31fbca0222" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheU.S.NavyMember_5459186c-b361-4861-be7e-81282b42d25f" xlink:href="efoi-20220930.xsd#efoi_DistributorToTheU.S.NavyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_DistributorToTheU.S.NavyMember_5459186c-b361-4861-be7e-81282b42d25f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ShipbuilderForUSNavyMember_27802c1b-236f-4c98-a60a-45020f8f4a18" xlink:href="efoi-20220930.xsd#efoi_ShipbuilderForUSNavyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_ShipbuilderForUSNavyMember_27802c1b-236f-4c98-a60a-45020f8f4a18" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_99db2bbc-cb84-4392-9bf5-206033da947b" xlink:href="efoi-20220930.xsd#efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_99db2bbc-cb84-4392-9bf5-206033da947b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialBuildingSystemsProviderMember_d3b4eb8c-c951-4318-a622-8d72bd07db0b" xlink:href="efoi-20220930.xsd#efoi_CommercialBuildingSystemsProviderMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_CommercialBuildingSystemsProviderMember_d3b4eb8c-c951-4318-a622-8d72bd07db0b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_USNavyMechanicalContractorMember_802d3175-eb5a-4543-95ee-86b318f3bdbc" xlink:href="efoi-20220930.xsd#efoi_USNavyMechanicalContractorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_USNavyMechanicalContractorMember_802d3175-eb5a-4543-95ee-86b318f3bdbc" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheUSDepartmentOfDefenseMember_99d4fa20-9ee1-491a-adaf-ee45c4783377" xlink:href="efoi-20220930.xsd#efoi_DistributorToTheUSDepartmentOfDefenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_DistributorToTheUSDepartmentOfDefenseMember_99d4fa20-9ee1-491a-adaf-ee45c4783377" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember_1f40b585-33f4-4741-abaa-c7a81db7dfbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:to="loc_us-gaap_SalesRevenueNetMember_1f40b585-33f4-4741-abaa-c7a81db7dfbf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_ccf15cd5-7bb1-451a-9754-8677439c93f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:to="loc_us-gaap_AccountsReceivableMember_ccf15cd5-7bb1-451a-9754-8677439c93f1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_TotalExpendituresMember_c1196d79-6c0e-4020-8d9c-07d1a7c43373" xlink:href="efoi-20220930.xsd#efoi_TotalExpendituresMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:to="loc_efoi_TotalExpendituresMember_c1196d79-6c0e-4020-8d9c-07d1a7c43373" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableMember_ba1e48af-4a83-4fa3-b8f6-ce87867d9063" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:to="loc_us-gaap_AccountsPayableMember_ba1e48af-4a83-4fa3-b8f6-ce87867d9063" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_b97974ed-1684-468b-a99e-4b2707e6e5d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_b97974ed-1684-468b-a99e-4b2707e6e5d1" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_b97974ed-1684-468b-a99e-4b2707e6e5d1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_b97974ed-1684-468b-a99e-4b2707e6e5d1" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_b97974ed-1684-468b-a99e-4b2707e6e5d1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_bcd7fc0b-c944-414c-b5ff-6cd750f4bc79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_b97974ed-1684-468b-a99e-4b2707e6e5d1" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_bcd7fc0b-c944-414c-b5ff-6cd750f4bc79" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_0594ae08-d831-45d1-b362-497a8c088c9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_bcd7fc0b-c944-414c-b5ff-6cd750f4bc79" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_0594ae08-d831-45d1-b362-497a8c088c9f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplierConcentrationRiskMember_b2a3e57d-1300-4e20-b8a2-ff6a7cafadf5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplierConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_bcd7fc0b-c944-414c-b5ff-6cd750f4bc79" xlink:to="loc_us-gaap_SupplierConcentrationRiskMember_b2a3e57d-1300-4e20-b8a2-ff6a7cafadf5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_188e0292-0a45-4f36-87dc-263c57c17a06" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_188e0292-0a45-4f36-87dc-263c57c17a06" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_188e0292-0a45-4f36-87dc-263c57c17a06_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_188e0292-0a45-4f36-87dc-263c57c17a06" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_188e0292-0a45-4f36-87dc-263c57c17a06_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_a8f0f62a-350f-4327-9197-a2a43c79d1a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_188e0292-0a45-4f36-87dc-263c57c17a06" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_a8f0f62a-350f-4327-9197-a2a43c79d1a6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OffshoreSupplierOneMember_7f69a1d0-0246-47da-84be-2ef3e1690f28" xlink:href="efoi-20220930.xsd#efoi_OffshoreSupplierOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_a8f0f62a-350f-4327-9197-a2a43c79d1a6" xlink:to="loc_efoi_OffshoreSupplierOneMember_7f69a1d0-0246-47da-84be-2ef3e1690f28" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OffshoreSupplierMember_28663e33-95ed-4f21-814b-bc53c12ed6b8" xlink:href="efoi-20220930.xsd#efoi_OffshoreSupplierMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_a8f0f62a-350f-4327-9197-a2a43c79d1a6" xlink:to="loc_efoi_OffshoreSupplierMember_28663e33-95ed-4f21-814b-bc53c12ed6b8" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" xlink:type="extended" id="id7056c6d74ac41829cbcf0efd004bd77_BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4cc9b0da-86ef-43b9-887c-c0681ef3481b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_57279ccc-df02-4a03-b8ba-fd2839da3ff5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4cc9b0da-86ef-43b9-887c-c0681ef3481b" xlink:to="loc_us-gaap_Revenues_57279ccc-df02-4a03-b8ba-fd2839da3ff5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_4bb28762-0ab7-450a-bab8-6e1b0ae0655c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4cc9b0da-86ef-43b9-887c-c0681ef3481b" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_4bb28762-0ab7-450a-bab8-6e1b0ae0655c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_52b89c3c-d52e-4881-8c2f-ba130a45e77f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_4bb28762-0ab7-450a-bab8-6e1b0ae0655c" xlink:to="loc_srt_ProductOrServiceAxis_52b89c3c-d52e-4881-8c2f-ba130a45e77f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_52b89c3c-d52e-4881-8c2f-ba130a45e77f_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_52b89c3c-d52e-4881-8c2f-ba130a45e77f" xlink:to="loc_srt_ProductsAndServicesDomain_52b89c3c-d52e-4881-8c2f-ba130a45e77f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_298c2547-dfe5-4e55-a525-b68339bc29ee" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_52b89c3c-d52e-4881-8c2f-ba130a45e77f" xlink:to="loc_srt_ProductsAndServicesDomain_298c2547-dfe5-4e55-a525-b68339bc29ee" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialProductsMember_fdf5eb6c-c0c3-4da2-a0a4-cc843c0c12bc" xlink:href="efoi-20220930.xsd#efoi_CommercialProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_298c2547-dfe5-4e55-a525-b68339bc29ee" xlink:to="loc_efoi_CommercialProductsMember_fdf5eb6c-c0c3-4da2-a0a4-cc843c0c12bc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_MMMProductsMember_df4d7fac-2cda-443a-a62a-b6772bd2497a" xlink:href="efoi-20220930.xsd#efoi_MMMProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_298c2547-dfe5-4e55-a525-b68339bc29ee" xlink:to="loc_efoi_MMMProductsMember_df4d7fac-2cda-443a-a62a-b6772bd2497a" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails" xlink:type="extended" id="ic0529a13a2c445c48c6e9b54fba5d86e_BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_ac574fc5-622a-4b17-aea4-62226c40f60a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_75d8ae71-5c9d-4f47-8daa-472521f86bf6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_ac574fc5-622a-4b17-aea4-62226c40f60a" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_75d8ae71-5c9d-4f47-8daa-472521f86bf6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_ac574fc5-622a-4b17-aea4-62226c40f60a" xlink:to="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_f1ac335e-dcba-4033-9d81-6e21e7b9fff2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:to="loc_srt_StatementGeographicalAxis_f1ac335e-dcba-4033-9d81-6e21e7b9fff2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_f1ac335e-dcba-4033-9d81-6e21e7b9fff2_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_f1ac335e-dcba-4033-9d81-6e21e7b9fff2" xlink:to="loc_srt_SegmentGeographicalDomain_f1ac335e-dcba-4033-9d81-6e21e7b9fff2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_c7d9f725-29f6-49ff-97aa-a8ae8ce9182b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_f1ac335e-dcba-4033-9d81-6e21e7b9fff2" xlink:to="loc_srt_SegmentGeographicalDomain_c7d9f725-29f6-49ff-97aa-a8ae8ce9182b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember_aaf4c7f0-a648-4d59-a292-db9c71cfc0b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_c7d9f725-29f6-49ff-97aa-a8ae8ce9182b" xlink:to="loc_us-gaap_NonUsMember_aaf4c7f0-a648-4d59-a292-db9c71cfc0b7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_3c4e27d5-22dc-4c16-85c2-10544fe9287b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_3c4e27d5-22dc-4c16-85c2-10544fe9287b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_3c4e27d5-22dc-4c16-85c2-10544fe9287b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_3c4e27d5-22dc-4c16-85c2-10544fe9287b" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_3c4e27d5-22dc-4c16-85c2-10544fe9287b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_e65e8ca5-e0f9-4484-ab3f-a9c25894131d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_3c4e27d5-22dc-4c16-85c2-10544fe9287b" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_e65e8ca5-e0f9-4484-ab3f-a9c25894131d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember_0f4d7599-415b-4966-ba48-49feb18615d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_e65e8ca5-e0f9-4484-ab3f-a9c25894131d" xlink:to="loc_us-gaap_SalesRevenueNetMember_0f4d7599-415b-4966-ba48-49feb18615d4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_8511929b-315a-4899-8873-499679cdffb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_8511929b-315a-4899-8873-499679cdffb1" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_8511929b-315a-4899-8873-499679cdffb1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_8511929b-315a-4899-8873-499679cdffb1" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_8511929b-315a-4899-8873-499679cdffb1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_d95d17ca-300a-4df8-98c6-3711251a1e22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_8511929b-315a-4899-8873-499679cdffb1" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_d95d17ca-300a-4df8-98c6-3711251a1e22" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_1e19ef7f-0a2f-4ce6-91e2-fe8a3fcea3f0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_d95d17ca-300a-4df8-98c6-3711251a1e22" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_1e19ef7f-0a2f-4ce6-91e2-fe8a3fcea3f0" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="extended" id="i937138b127524f7d9bf27e2223e9996d_BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_d8ea6480-5ade-414a-a1da-ff2649cea6fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_e503416b-ab45-4d98-8b0e-c52b454debc2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_d8ea6480-5ade-414a-a1da-ff2649cea6fe" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_e503416b-ab45-4d98-8b0e-c52b454debc2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_4c216178-8725-4941-8f77-5ef0e3c96b5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_d8ea6480-5ade-414a-a1da-ff2649cea6fe" xlink:to="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_4c216178-8725-4941-8f77-5ef0e3c96b5d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_7fa804ab-54a6-4af5-83a2-d7c21f7151e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_4c216178-8725-4941-8f77-5ef0e3c96b5d" xlink:to="loc_us-gaap_AwardTypeAxis_7fa804ab-54a6-4af5-83a2-d7c21f7151e4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_7fa804ab-54a6-4af5-83a2-d7c21f7151e4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_7fa804ab-54a6-4af5-83a2-d7c21f7151e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_7fa804ab-54a6-4af5-83a2-d7c21f7151e4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_7fa804ab-54a6-4af5-83a2-d7c21f7151e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_61ea54e6-54d9-4c9d-90e6-ecf589d46980" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:to="loc_us-gaap_WarrantMember_61ea54e6-54d9-4c9d-90e6-ecf589d46980" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_1b3f869a-4241-4b49-91a0-e83bf4a8f4f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_1b3f869a-4241-4b49-91a0-e83bf4a8f4f9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockOptionMember_7ef54188-efcd-48ad-899f-b7a2b39a58e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:to="loc_us-gaap_StockOptionMember_7ef54188-efcd-48ad-899f-b7a2b39a58e3" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="extended" id="i86919cc900f74a3b9b4c04b5c71566db_BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityLineItems_bb1a0a6e-5b42-4913-b6db-1493fdd5663f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyLiabilityLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyNumberofYears_3222b987-b016-4497-824f-b54362b3cea6" xlink:href="efoi-20220930.xsd#efoi_StandardProductWarrantyNumberofYears"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ProductWarrantyLiabilityLineItems_bb1a0a6e-5b42-4913-b6db-1493fdd5663f" xlink:to="loc_efoi_StandardProductWarrantyNumberofYears_3222b987-b016-4497-824f-b54362b3cea6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyLiabilityTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ProductWarrantyLiabilityLineItems_bb1a0a6e-5b42-4913-b6db-1493fdd5663f" xlink:to="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_7bd139b2-19f8-403b-a29a-423f586a457a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:to="loc_srt_RangeAxis_7bd139b2-19f8-403b-a29a-423f586a457a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_7bd139b2-19f8-403b-a29a-423f586a457a_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_7bd139b2-19f8-403b-a29a-423f586a457a" xlink:to="loc_srt_RangeMember_7bd139b2-19f8-403b-a29a-423f586a457a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_86e12ea7-22cf-4840-9ebc-1c28ab77cead" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_7bd139b2-19f8-403b-a29a-423f586a457a" xlink:to="loc_srt_RangeMember_86e12ea7-22cf-4840-9ebc-1c28ab77cead" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_f427a166-999b-4786-af75-b7a05b33c9c0" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_86e12ea7-22cf-4840-9ebc-1c28ab77cead" xlink:to="loc_srt_MinimumMember_f427a166-999b-4786-af75-b7a05b33c9c0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_b0aa7fec-35da-408f-a445-0516383ae471" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_86e12ea7-22cf-4840-9ebc-1c28ab77cead" xlink:to="loc_srt_MaximumMember_b0aa7fec-35da-408f-a445-0516383ae471" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_9f7d3589-d521-498c-8396-cda71adab242" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:to="loc_srt_ProductOrServiceAxis_9f7d3589-d521-498c-8396-cda71adab242" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_9f7d3589-d521-498c-8396-cda71adab242_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_9f7d3589-d521-498c-8396-cda71adab242" xlink:to="loc_srt_ProductsAndServicesDomain_9f7d3589-d521-498c-8396-cda71adab242_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_adb6daa8-20ae-4e6e-9901-8ab77e2e18fe" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_9f7d3589-d521-498c-8396-cda71adab242" xlink:to="loc_srt_ProductsAndServicesDomain_adb6daa8-20ae-4e6e-9901-8ab77e2e18fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialProductsMember_4d187aa2-04b4-4639-b7fa-e4439f6c62b1" xlink:href="efoi-20220930.xsd#efoi_CommercialProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_adb6daa8-20ae-4e6e-9901-8ab77e2e18fe" xlink:to="loc_efoi_CommercialProductsMember_4d187aa2-04b4-4639-b7fa-e4439f6c62b1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_MMMLEDProductsMember_a0c2cb83-0a15-4aad-88e5-65645b3ac0bb" xlink:href="efoi-20220930.xsd#efoi_MMMLEDProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_adb6daa8-20ae-4e6e-9901-8ab77e2e18fe" xlink:to="loc_efoi_MMMLEDProductsMember_a0c2cb83-0a15-4aad-88e5-65645b3ac0bb" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" xlink:type="extended" id="ie8d5c65c4bae40d0831adea4101c6e2d_BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_9741141c-2399-4a69-bb81-fd83917d422b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_9741141c-2399-4a69-bb81-fd83917d422b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_088b8fc9-cf3c-4d46-a8ec-24443f98c13c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_088b8fc9-cf3c-4d46-a8ec-24443f98c13c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_760b44c3-3405-4738-a184-426176df8b09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_760b44c3-3405-4738-a184-426176df8b09" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_f07dc728-7d43-4929-87e7-6cb556e07455" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_f07dc728-7d43-4929-87e7-6cb556e07455" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_49bdbde5-ac27-44f6-b4ca-87c78ed2803f" xlink:href="efoi-20220930.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_49bdbde5-ac27-44f6-b4ca-87c78ed2803f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3de3ea41-2eb1-4820-8471-aac63fd8b90b" xlink:href="efoi-20220930.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3de3ea41-2eb1-4820-8471-aac63fd8b90b" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_8face694-6b4a-4891-8526-5df6f6702491" xlink:href="efoi-20220930.xsd#efoi_PaymentsForClearingFees"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_PaymentsForClearingFees_8face694-6b4a-4891-8526-5df6f6702491" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_0fa63f27-401a-4e4e-b1f6-b1b830d6464c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_0fa63f27-401a-4e4e-b1f6-b1b830d6464c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_eb173918-4e5a-4796-9fc8-eb730d2afb56" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_eb173918-4e5a-4796-9fc8-eb730d2afb56" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_46d52d85-2426-4d01-8748-68d245441f9c" xlink:href="efoi-20220930.xsd#efoi_EstimatedProceedsFromIssuanceOfWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_46d52d85-2426-4d01-8748-68d245441f9c" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_e60536ef-6233-4300-8494-bde82dc55a29" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_e60536ef-6233-4300-8494-bde82dc55a29" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_428f4224-2b30-44a6-b090-aa3a6c0d616d" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_428f4224-2b30-44a6-b090-aa3a6c0d616d" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_4654c3ef-5708-453a-beca-22fa980e3285" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_4654c3ef-5708-453a-beca-22fa980e3285" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_b16aed15-c1aa-490d-b979-b31718d3228f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_b16aed15-c1aa-490d-b979-b31718d3228f" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_dd32f028-b881-4a58-b532-3d0b6a944708" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_dd32f028-b881-4a58-b532-3d0b6a944708" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_dd32f028-b881-4a58-b532-3d0b6a944708_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_dd32f028-b881-4a58-b532-3d0b6a944708" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_dd32f028-b881-4a58-b532-3d0b6a944708_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_dd32f028-b881-4a58-b532-3d0b6a944708" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_June2022PrivatePlacementMember_fb8e66ca-1df1-492c-8436-90ba17264c30" xlink:href="efoi-20220930.xsd#efoi_June2022PrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_June2022PrivatePlacementMember_fb8e66ca-1df1-492c-8436-90ba17264c30" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_December2021PrivatePlacementMember_af432ff3-dcef-4c8c-8e1a-5e5634ffd711" xlink:href="efoi-20220930.xsd#efoi_December2021PrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_December2021PrivatePlacementMember_af432ff3-dcef-4c8c-8e1a-5e5634ffd711" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_cec43acf-5356-4be1-bd17-ed96972a461a" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_InstitutionalInvestorMember_cec43acf-5356-4be1-bd17-ed96972a461a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020InstitutionalInvestorMember_9a5337fc-93b4-4c78-96cf-e0134abd411e" xlink:href="efoi-20220930.xsd#efoi_January2020InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_January2020InstitutionalInvestorMember_9a5337fc-93b4-4c78-96cf-e0134abd411e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingPrivatePlacementMember_0c15f52e-43be-441f-a7d0-70c40b8e9342" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingPrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_January2020EquityOfferingPrivatePlacementMember_0c15f52e-43be-441f-a7d0-70c40b8e9342" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingMember_de3333f8-9dc9-49e9-a8be-0feb641690d8" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_January2020EquityOfferingMember_de3333f8-9dc9-49e9-a8be-0feb641690d8" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightAxis_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:to="loc_us-gaap_ClassOfWarrantOrRightAxis_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightDomain_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ClassOfWarrantOrRightAxis_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4" xlink:to="loc_us-gaap_ClassOfWarrantOrRightDomain_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightDomain_acb5fe0c-371f-4c7d-b7aa-841c40c47bf4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ClassOfWarrantOrRightAxis_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4" xlink:to="loc_us-gaap_ClassOfWarrantOrRightDomain_acb5fe0c-371f-4c7d-b7aa-841c40c47bf4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PreFundedWarrantsMember_90cf4342-5c16-4f7b-8a71-c522481a03cf" xlink:href="efoi-20220930.xsd#efoi_PreFundedWarrantsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain_acb5fe0c-371f-4c7d-b7aa-841c40c47bf4" xlink:to="loc_efoi_PreFundedWarrantsMember_90cf4342-5c16-4f7b-8a71-c522481a03cf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_8d404b34-28da-4326-971a-e54a96714bb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain_acb5fe0c-371f-4c7d-b7aa-841c40c47bf4" xlink:to="loc_us-gaap_WarrantMember_8d404b34-28da-4326-971a-e54a96714bb5" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#RestructuringNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails" xlink:type="extended" id="i69a8bff4779b46da877201d87be2ee1b_RestructuringNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCosts_eedeba13-52bd-42ab-b668-acb6215a9e1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_us-gaap_RestructuringCosts_eedeba13-52bd-42ab-b668-acb6215a9e1f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_f9853baf-3896-4d72-adf4-0e31db83e7fa" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_f9853baf-3896-4d72-adf4-0e31db83e7fa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_5f93a73f-ec50-4e27-97f2-9ff55e02b0f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_5f93a73f-ec50-4e27-97f2-9ff55e02b0f8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommonStockClosingBidPriceThreshold_65dddba3-3cc6-4560-b4e7-bd728b8e8fa4" xlink:href="efoi-20220930.xsd#efoi_CommonStockClosingBidPriceThreshold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_efoi_CommonStockClosingBidPriceThreshold_65dddba3-3cc6-4560-b4e7-bd728b8e8fa4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold_cc572134-9b93-4b18-86c9-0847f2b0459e" xlink:href="efoi-20220930.xsd#efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold_cc572134-9b93-4b18-86c9-0847f2b0459e" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_40a4c09a-f17f-4f1c-9d40-e368f06fba13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_us-gaap_StockholdersEquity_40a4c09a-f17f-4f1c-9d40-e368f06fba13" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified_a6bdfc1e-d578-41d4-8a4f-04910077b0d9" xlink:href="efoi-20220930.xsd#efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified_a6bdfc1e-d578-41d4-8a4f-04910077b0d9" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_138b9d23-6aa9-4374-986d-59f53ffe162a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_138b9d23-6aa9-4374-986d-59f53ffe162a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_e10d337c-b9af-4f7b-ae6d-2701cccf70b1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_138b9d23-6aa9-4374-986d-59f53ffe162a" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_e10d337c-b9af-4f7b-ae6d-2701cccf70b1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_e10d337c-b9af-4f7b-ae6d-2701cccf70b1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_e10d337c-b9af-4f7b-ae6d-2701cccf70b1" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_e10d337c-b9af-4f7b-ae6d-2701cccf70b1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_ea507d2c-a9ec-4d5d-9557-0841ae6cc33f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_e10d337c-b9af-4f7b-ae6d-2701cccf70b1" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_ea507d2c-a9ec-4d5d-9557-0841ae6cc33f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_December2021PrivatePlacementMember_ed28f8c8-95d2-440a-8eee-a3a12f371e83" xlink:href="efoi-20220930.xsd#efoi_December2021PrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_ea507d2c-a9ec-4d5d-9557-0841ae6cc33f" xlink:to="loc_efoi_December2021PrivatePlacementMember_ed28f8c8-95d2-440a-8eee-a3a12f371e83" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_51760733-256b-4cd9-9f36-e4c602c8fc08" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_ea507d2c-a9ec-4d5d-9557-0841ae6cc33f" xlink:to="loc_efoi_InstitutionalInvestorMember_51760733-256b-4cd9-9f36-e4c602c8fc08" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#RestructuringReconciliationofRestructuringLiabilityDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails" xlink:type="extended" id="i6c6938c170224a7ab1c610d5ddea3283_RestructuringReconciliationofRestructuringLiabilityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_1e5657fe-6dc7-45f5-8a4e-f50b828331a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserveRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_1e5657fe-6dc7-45f5-8a4e-f50b828331a5" xlink:to="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_7dcc1cbd-6c78-4caa-9a43-3073265ff94d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserve"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:to="loc_us-gaap_RestructuringReserve_7dcc1cbd-6c78-4caa-9a43-3073265ff94d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRestructuring_fca35c22-f0d1-4b02-aa51-50f63f24d1e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRestructuring"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:to="loc_us-gaap_PaymentsForRestructuring_fca35c22-f0d1-4b02-aa51-50f63f24d1e2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_ca777c87-f25c-44da-ba30-1b132d9716dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserve"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_3e722d05-b3f6-4c7a-8282-952460250181" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_1e5657fe-6dc7-45f5-8a4e-f50b828331a5" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_3e722d05-b3f6-4c7a-8282-952460250181" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveAxis_3fc6e8ef-4845-4292-9361-2d579fa93ade" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_3e722d05-b3f6-4c7a-8282-952460250181" xlink:to="loc_us-gaap_RestructuringCostAndReserveAxis_3fc6e8ef-4845-4292-9361-2d579fa93ade" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_3fc6e8ef-4845-4292-9361-2d579fa93ade_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_3fc6e8ef-4845-4292-9361-2d579fa93ade" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_3fc6e8ef-4845-4292-9361-2d579fa93ade_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_6a352155-6c08-4677-8a32-3d1ea4c575c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_3fc6e8ef-4845-4292-9361-2d579fa93ade" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_6a352155-6c08-4677-8a32-3d1ea4c575c4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FacilityClosingMember_0331ef43-5138-40fa-82ea-11fa582f9b59" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FacilityClosingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfRestructuringDomain_6a352155-6c08-4677-8a32-3d1ea4c575c4" xlink:to="loc_us-gaap_FacilityClosingMember_0331ef43-5138-40fa-82ea-11fa582f9b59" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#PropertyandEquipmentScheduleofPropertyandEquipmentDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="extended" id="ieb416fb9130b438ea2fb131ba88710ff_PropertyandEquipmentScheduleofPropertyandEquipmentDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_0be1922a-29a3-42c8-b7a0-59541aad1d69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_0be1922a-29a3-42c8-b7a0-59541aad1d69" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization_c7adaad3-d1b5-40f0-9b8a-383058c28547" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization_c7adaad3-d1b5-40f0-9b8a-383058c28547" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_293d65f3-4673-4cb9-9b04-895d157a4d14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_293d65f3-4673-4cb9-9b04-895d157a4d14" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_b4ef886e-e3d1-4150-9158-12c75d64759c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_b4ef886e-e3d1-4150-9158-12c75d64759c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_dfae89a7-40c6-44da-aaf9-16635a09a19a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_dfae89a7-40c6-44da-aaf9-16635a09a19a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_a15e0d76-886f-473f-bcf1-ba312c2bc4de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_a15e0d76-886f-473f-bcf1-ba312c2bc4de" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_53081012-f4e0-4bf5-8b98-bb5c34798d20" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_Depreciation_53081012-f4e0-4bf5-8b98-bb5c34798d20" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_d16d22cf-4bd4-4230-b3c3-f7fe31cd8793" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_d16d22cf-4bd4-4230-b3c3-f7fe31cd8793" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_9c6517ad-48cc-43f8-b118-1cfa6db443fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_9c6517ad-48cc-43f8-b118-1cfa6db443fd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_9c6517ad-48cc-43f8-b118-1cfa6db443fd_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_9c6517ad-48cc-43f8-b118-1cfa6db443fd" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_9c6517ad-48cc-43f8-b118-1cfa6db443fd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_9c6517ad-48cc-43f8-b118-1cfa6db443fd" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_68e9f823-84b2-4272-9b07-1f15844e9d30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_EquipmentMember_68e9f823-84b2-4272-9b07-1f15844e9d30" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ToolingMember_92108cfb-54be-4679-aef3-abb80df20fab" xlink:href="efoi-20220930.xsd#efoi_ToolingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_efoi_ToolingMember_92108cfb-54be-4679-aef3-abb80df20fab" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VehiclesMember_137ff729-3105-4ac5-9676-867269bb9909" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VehiclesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_VehiclesMember_137ff729-3105-4ac5-9676-867269bb9909" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_e098c594-c914-4fb3-b4de-b257eceed4ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_e098c594-c914-4fb3-b4de-b257eceed4ca" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_27275117-cfc4-4c67-8f28-d20a2792ab5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_27275117-cfc4-4c67-8f28-d20a2792ab5c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_1137197f-1159-4a5b-b251-e7aab5bb1542" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_1137197f-1159-4a5b-b251-e7aab5bb1542" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_UltravioletCLightDisinfectionRobotsMember_15df315c-9a44-4d5a-9510-859bd3efd02b" xlink:href="efoi-20220930.xsd#efoi_UltravioletCLightDisinfectionRobotsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_efoi_UltravioletCLightDisinfectionRobotsMember_15df315c-9a44-4d5a-9510-859bd3efd02b" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressMember_b16fbb0d-4c36-42c5-884c-37d9d8b2d725" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConstructionInProgressMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_ConstructionInProgressMember_b16fbb0d-4c36-42c5-884c-37d9d8b2d725" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:to="loc_srt_RangeAxis_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc" xlink:to="loc_srt_RangeMember_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_657d0478-b55f-4553-a317-d934db7a820a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc" xlink:to="loc_srt_RangeMember_657d0478-b55f-4553-a317-d934db7a820a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_1a46789a-9e72-4465-9bbd-b3ac57ec1528" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_657d0478-b55f-4553-a317-d934db7a820a" xlink:to="loc_srt_MinimumMember_1a46789a-9e72-4465-9bbd-b3ac57ec1528" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_83e11fda-2e02-4285-8f0e-2f52c81ce298" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_657d0478-b55f-4553-a317-d934db7a820a" xlink:to="loc_srt_MaximumMember_83e11fda-2e02-4285-8f0e-2f52c81ce298" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#LeasesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="extended" id="i0b05b16cb5344d95a8b38f83f55b9160_LeasesNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasedAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_48414e02-3a5d-4af2-81be-daab920da636" xlink:href="efoi-20220930.xsd#efoi_LesseeOperatingLeaseInterestRateEffectiveRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:to="loc_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_48414e02-3a5d-4af2-81be-daab920da636" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseDiscountRate_c99c7c1b-d5d2-4028-ab89-a455d0db071d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseDiscountRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:to="loc_us-gaap_LesseeOperatingLeaseDiscountRate_c99c7c1b-d5d2-4028-ab89-a455d0db071d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_1f30d8af-80aa-4c7d-92b4-ce0939fd7854" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_1f30d8af-80aa-4c7d-92b4-ce0939fd7854" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_3c811767-307a-497b-b10f-b72f1800286f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfOperatingLeasedAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:to="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_3c811767-307a-497b-b10f-b72f1800286f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_3c811767-307a-497b-b10f-b72f1800286f" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a1e19be0-3a2a-4704-b54d-e8d5ca182577" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a1e19be0-3a2a-4704-b54d-e8d5ca182577" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_78788c10-98ef-4197-afd3-e63470ed5e1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a1e19be0-3a2a-4704-b54d-e8d5ca182577" xlink:to="loc_us-gaap_EquipmentMember_78788c10-98ef-4197-afd3-e63470ed5e1c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RealEstateMember_69735d92-fc5f-4380-8fa4-c04ef6888f77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RealEstateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a1e19be0-3a2a-4704-b54d-e8d5ca182577" xlink:to="loc_us-gaap_RealEstateMember_69735d92-fc5f-4380-8fa4-c04ef6888f77" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#DebtCreditFacilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails" xlink:type="extended" id="i196af07c172a4aa9a015b76827ed2a4a_DebtCreditFacilitiesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentNumberOfCreditFacilities_574ed717-9c12-417f-82f7-4829985f2157" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentNumberOfCreditFacilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_DebtInstrumentNumberOfCreditFacilities_574ed717-9c12-417f-82f7-4829985f2157" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_acfba37a-1c8b-4917-86a5-b7bd8753e784" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_acfba37a-1c8b-4917-86a5-b7bd8753e784" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_cecab98b-1d4d-4346-87a5-b2c80333423e" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_cecab98b-1d4d-4346-87a5-b2c80333423e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_4f7d7cc4-b412-4b26-8b31-acd13b2fa430" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_4f7d7cc4-b412-4b26-8b31-acd13b2fa430" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_6030900a-01a6-4c49-beb0-79e87c7932f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_6030900a-01a6-4c49-beb0-79e87c7932f5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentBaseRateVariable_a6ccc814-97f5-40da-bbbc-78e47468da21" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentBaseRateVariable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_DebtInstrumentBaseRateVariable_a6ccc814-97f5-40da-bbbc-78e47468da21" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_3fd677a5-805a-41f7-8cec-6eccd6a60b71" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFeePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_3fd677a5-805a-41f7-8cec-6eccd6a60b71" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee_ea54f534-3e1e-4aab-b124-92988e840ac4" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFee"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee_ea54f534-3e1e-4aab-b124-92988e840ac4" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_4afc50b6-a78d-420f-bf18-f6b137c642b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityExpirationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_4afc50b6-a78d-420f-bf18-f6b137c642b5" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityTerminationNoticePeriod_a4067ce1-6c6d-49be-a12b-f7ef30d8e8d6" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityTerminationNoticePeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityTerminationNoticePeriod_a4067ce1-6c6d-49be-a12b-f7ef30d8e8d6" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityAnnualFacilityFee_d116fa1a-b33a-4618-b7d4-eb175cdc62cd" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityAnnualFacilityFee"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityAnnualFacilityFee_d116fa1a-b33a-4618-b7d4-eb175cdc62cd" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_fbd37df8-9815-41a3-81f6-a8c01eec50e4" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_fbd37df8-9815-41a3-81f6-a8c01eec50e4" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_b0997ce1-d1e5-41b7-b897-39c15820abda" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_b0997ce1-d1e5-41b7-b897-39c15820abda" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent_d4ca4fcc-ad22-420d-b9e9-71679c06a8ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_LinesOfCreditCurrent_d4ca4fcc-ad22-420d-b9e9-71679c06a8ef" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnamortizedDebtIssuanceExpense_0c0d826e-1b0b-4dc8-9c6d-35be2455ffeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnamortizedDebtIssuanceExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_UnamortizedDebtIssuanceExpense_0c0d826e-1b0b-4dc8-9c6d-35be2455ffeb" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_a9d2e598-3563-4362-8485-bcdf10c3cfb7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:to="loc_us-gaap_CreditFacilityAxis_a9d2e598-3563-4362-8485-bcdf10c3cfb7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_a9d2e598-3563-4362-8485-bcdf10c3cfb7_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_a9d2e598-3563-4362-8485-bcdf10c3cfb7" xlink:to="loc_us-gaap_CreditFacilityDomain_a9d2e598-3563-4362-8485-bcdf10c3cfb7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_61a56ecb-7b8b-44f6-bdcc-2ea94658c2e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_a9d2e598-3563-4362-8485-bcdf10c3cfb7" xlink:to="loc_us-gaap_CreditFacilityDomain_61a56ecb-7b8b-44f6-bdcc-2ea94658c2e6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_b47a7d9b-6955-493d-a014-3a18038fa5bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_61a56ecb-7b8b-44f6-bdcc-2ea94658c2e6" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_b47a7d9b-6955-493d-a014-3a18038fa5bc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_f386efa6-833a-4b1e-b8ce-44c103217321" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:to="loc_us-gaap_DebtInstrumentAxis_f386efa6-833a-4b1e-b8ce-44c103217321" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_f386efa6-833a-4b1e-b8ce-44c103217321_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_f386efa6-833a-4b1e-b8ce-44c103217321" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_f386efa6-833a-4b1e-b8ce-44c103217321_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_64e7e3a2-7840-460f-8c38-aa81712dedb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_f386efa6-833a-4b1e-b8ce-44c103217321" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_64e7e3a2-7840-460f-8c38-aa81712dedb8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryFacilityMember_3ab20fbf-7187-4034-8a78-174b672872a6" xlink:href="efoi-20220930.xsd#efoi_InventoryFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_64e7e3a2-7840-460f-8c38-aa81712dedb8" xlink:to="loc_efoi_InventoryFacilityMember_3ab20fbf-7187-4034-8a78-174b672872a6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ReceivablesFacilityMember_6ce43028-7360-4e01-afe6-de33a9232e72" xlink:href="efoi-20220930.xsd#efoi_ReceivablesFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_64e7e3a2-7840-460f-8c38-aa81712dedb8" xlink:to="loc_efoi_ReceivablesFacilityMember_6ce43028-7360-4e01-afe6-de33a9232e72" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_c19d87af-5a32-4c98-b0d5-0a31bed2cba0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:to="loc_us-gaap_VariableRateAxis_c19d87af-5a32-4c98-b0d5-0a31bed2cba0" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_c19d87af-5a32-4c98-b0d5-0a31bed2cba0_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VariableRateAxis_c19d87af-5a32-4c98-b0d5-0a31bed2cba0" xlink:to="loc_us-gaap_VariableRateDomain_c19d87af-5a32-4c98-b0d5-0a31bed2cba0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_0bf191ed-4c84-4aa8-95de-cc9c2a030a0a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VariableRateAxis_c19d87af-5a32-4c98-b0d5-0a31bed2cba0" xlink:to="loc_us-gaap_VariableRateDomain_0bf191ed-4c84-4aa8-95de-cc9c2a030a0a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_4cfafe6d-acdc-4d8d-b654-da3815bc9ee5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_0bf191ed-4c84-4aa8-95de-cc9c2a030a0a" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_4cfafe6d-acdc-4d8d-b654-da3815bc9ee5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_WallStreetJournalHighestPrimeRateMember_71edf4f8-346e-4c42-b311-f29e67411bf5" xlink:href="efoi-20220930.xsd#efoi_WallStreetJournalHighestPrimeRateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_0bf191ed-4c84-4aa8-95de-cc9c2a030a0a" xlink:to="loc_efoi_WallStreetJournalHighestPrimeRateMember_71edf4f8-346e-4c42-b311-f29e67411bf5" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#DebtPromissoryNotePayableDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails" xlink:type="extended" id="i55ba116050a2453fabbd722d2a54d9d7_DebtPromissoryNotePayableDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_20168e53-4345-4552-979a-23574b714ffa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_1022d0e2-1ec8-42e7-bda2-22488f4c5097" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_20168e53-4345-4552-979a-23574b714ffa" xlink:to="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_1022d0e2-1ec8-42e7-bda2-22488f4c5097" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_3998c901-0287-40cc-b246-0f38d37a165e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DueToRelatedPartiesCurrentAndNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_20168e53-4345-4552-979a-23574b714ffa" xlink:to="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_3998c901-0287-40cc-b246-0f38d37a165e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_20168e53-4345-4552-979a-23574b714ffa" xlink:to="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis_0c1fb120-3627-4b59-9ce0-844352f3e93a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:to="loc_us-gaap_RelatedPartyTransactionAxis_0c1fb120-3627-4b59-9ce0-844352f3e93a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_0c1fb120-3627-4b59-9ce0-844352f3e93a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_0c1fb120-3627-4b59-9ce0-844352f3e93a" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_0c1fb120-3627-4b59-9ce0-844352f3e93a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_5aacf985-39dd-4d69-891f-d3383e303e8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_0c1fb120-3627-4b59-9ce0-844352f3e93a" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_5aacf985-39dd-4d69-891f-d3383e303e8f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022PromissoryNoteMember_135f97d9-06d7-434b-a61d-fa0bc1301a01" xlink:href="efoi-20220930.xsd#efoi_A2022PromissoryNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_5aacf985-39dd-4d69-891f-d3383e303e8f" xlink:to="loc_efoi_A2022PromissoryNoteMember_135f97d9-06d7-434b-a61d-fa0bc1301a01" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_5da70b47-2793-4620-bee6-196af7e52d13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_5da70b47-2793-4620-bee6-196af7e52d13" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_5da70b47-2793-4620-bee6-196af7e52d13_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_5da70b47-2793-4620-bee6-196af7e52d13" xlink:to="loc_us-gaap_RelatedPartyDomain_5da70b47-2793-4620-bee6-196af7e52d13_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_f669e920-7841-46cf-9e98-909a3a5c12a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_5da70b47-2793-4620-bee6-196af7e52d13" xlink:to="loc_us-gaap_RelatedPartyDomain_f669e920-7841-46cf-9e98-909a3a5c12a3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember_b553795f-6c5a-4199-af4e-91745163ff4f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_f669e920-7841-46cf-9e98-909a3a5c12a3" xlink:to="loc_srt_DirectorMember_b553795f-6c5a-4199-af4e-91745163ff4f" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#DebtStreetervilleNotesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails" xlink:type="extended" id="icd29f7debec64e28b55f9a81a311342b_DebtStreetervilleNotesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_298bfd15-4330-4184-a590-05869bd6e947" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_298bfd15-4330-4184-a590-05869bd6e947" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_4be11d9a-5366-414d-bb8b-63303a8f5658" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_4be11d9a-5366-414d-bb8b-63303a8f5658" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_8a3930e9-60eb-433b-8ab1-1c3c4fb9c090" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_8a3930e9-60eb-433b-8ab1-1c3c4fb9c090" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross_207085d0-17cd-4050-aa5f-15f2fc5cc3bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DeferredFinanceCostsGross_207085d0-17cd-4050-aa5f-15f2fc5cc3bd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_c69e2e2b-f029-4bb4-b942-51bdb050eaf0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_c69e2e2b-f029-4bb4-b942-51bdb050eaf0" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPrepaymentPremiumPercent_6c4ad80a-b727-468a-a0c5-d4a0c6ac9dcf" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentPrepaymentPremiumPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtInstrumentPrepaymentPremiumPercent_6c4ad80a-b727-468a-a0c5-d4a0c6ac9dcf" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtPrepaymentMaximumPercentage_4c05b082-028b-4f1c-9091-e22a00491d29" xlink:href="efoi-20220930.xsd#efoi_DebtPrepaymentMaximumPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtPrepaymentMaximumPercentage_4c05b082-028b-4f1c-9091-e22a00491d29" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_c23aa4ac-e7a5-4f64-8a51-46847681cca4" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_c23aa4ac-e7a5-4f64-8a51-46847681cca4" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_353516f3-1cd8-4bca-9de2-c7d17a0da1be" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_353516f3-1cd8-4bca-9de2-c7d17a0da1be" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_6e295c47-46fd-41aa-b8d9-32a01863cd10" xlink:href="efoi-20220930.xsd#efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_6e295c47-46fd-41aa-b8d9-32a01863cd10" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_f204a958-5f00-4d9a-b867-d9bedb54c3cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_f204a958-5f00-4d9a-b867-d9bedb54c3cd" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_81597cb0-0ec6-45ae-8885-e5b6ffe3356a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_81597cb0-0ec6-45ae-8885-e5b6ffe3356a" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_0434cc69-7a48-48eb-9661-3b202373d87d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_0434cc69-7a48-48eb-9661-3b202373d87d" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange_7eff82f7-f364-4982-964b-f1a809a7835b" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange_7eff82f7-f364-4982-964b-f1a809a7835b" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_62577df9-9bed-4a18-b42e-6fe8266fd744" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:to="loc_us-gaap_DebtInstrumentAxis_62577df9-9bed-4a18-b42e-6fe8266fd744" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_62577df9-9bed-4a18-b42e-6fe8266fd744_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_62577df9-9bed-4a18-b42e-6fe8266fd744" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_62577df9-9bed-4a18-b42e-6fe8266fd744_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_a480b0ea-2026-43ff-be3f-848c05af3c41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_62577df9-9bed-4a18-b42e-6fe8266fd744" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_a480b0ea-2026-43ff-be3f-848c05af3c41" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022StreetervilleNoteMember_c9aa3ce4-80c8-4a29-b12f-66a4fa0ab0bd" xlink:href="efoi-20220930.xsd#efoi_A2022StreetervilleNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a480b0ea-2026-43ff-be3f-848c05af3c41" xlink:to="loc_efoi_A2022StreetervilleNoteMember_c9aa3ce4-80c8-4a29-b12f-66a4fa0ab0bd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2021StreetervilleNoteMember_4255c40d-9381-427d-ac6d-3b6cb73c77c9" xlink:href="efoi-20220930.xsd#efoi_A2021StreetervilleNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a480b0ea-2026-43ff-be3f-848c05af3c41" xlink:to="loc_efoi_A2021StreetervilleNoteMember_4255c40d-9381-427d-ac6d-3b6cb73c77c9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_54df4e72-9c9a-42d3-ac03-9725579a9479" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_54df4e72-9c9a-42d3-ac03-9725579a9479" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_54df4e72-9c9a-42d3-ac03-9725579a9479_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_54df4e72-9c9a-42d3-ac03-9725579a9479" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_54df4e72-9c9a-42d3-ac03-9725579a9479_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_6dab0b3a-c136-4869-950f-5f1d38fce4ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_54df4e72-9c9a-42d3-ac03-9725579a9479" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_6dab0b3a-c136-4869-950f-5f1d38fce4ed" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_b4749644-272f-4bc1-bbdd-879fc171219a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_6dab0b3a-c136-4869-950f-5f1d38fce4ed" xlink:to="loc_us-gaap_SubsequentEventMember_b4749644-272f-4bc1-bbdd-879fc171219a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_bc960f2d-3ad6-4edd-9e5a-84167392dcf5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_bc960f2d-3ad6-4edd-9e5a-84167392dcf5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_bc960f2d-3ad6-4edd-9e5a-84167392dcf5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_bc960f2d-3ad6-4edd-9e5a-84167392dcf5" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_bc960f2d-3ad6-4edd-9e5a-84167392dcf5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_80e23c2e-02f1-4260-9a89-06e810a8a3b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_bc960f2d-3ad6-4edd-9e5a-84167392dcf5" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_80e23c2e-02f1-4260-9a89-06e810a8a3b6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember_a5947656-bcc1-419b-8461-12f7497ad2e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_80e23c2e-02f1-4260-9a89-06e810a8a3b6" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember_a5947656-bcc1-419b-8461-12f7497ad2e8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_7bc884a1-23c7-4183-a482-c25d986987a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodTwoMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_80e23c2e-02f1-4260-9a89-06e810a8a3b6" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_7bc884a1-23c7-4183-a482-c25d986987a3" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtPPPLoanDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#DebtPPPLoanDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtPPPLoanDetails" xlink:type="extended" id="i56f089a1449f46a9b6d6d3b6dffc1a7b_DebtPPPLoanDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLoanOriginations1_a01dd2b4-63af-4229-b1f2-e9364bfb46be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLoanOriginations1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:to="loc_us-gaap_ProceedsFromLoanOriginations1_a01dd2b4-63af-4229-b1f2-e9364bfb46be" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_87e992e6-e1b8-4c3c-8adc-4475039fcf18" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_87e992e6-e1b8-4c3c-8adc-4475039fcf18" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_270fa628-2e5e-4199-ab00-b9c4cd094e1c" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_270fa628-2e5e-4199-ab00-b9c4cd094e1c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_f02d2118-59fb-436a-9610-9cfdb9814482" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:to="loc_us-gaap_DebtInstrumentTable_f02d2118-59fb-436a-9610-9cfdb9814482" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_511438bb-f216-4745-a775-7a2d11f3a4c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_f02d2118-59fb-436a-9610-9cfdb9814482" xlink:to="loc_us-gaap_DebtInstrumentAxis_511438bb-f216-4745-a775-7a2d11f3a4c6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_511438bb-f216-4745-a775-7a2d11f3a4c6_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_511438bb-f216-4745-a775-7a2d11f3a4c6" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_511438bb-f216-4745-a775-7a2d11f3a4c6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_bc2d9e88-2c8b-4c82-84ed-3227a87b0d1a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_511438bb-f216-4745-a775-7a2d11f3a4c6" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_bc2d9e88-2c8b-4c82-84ed-3227a87b0d1a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaycheckProtectionProgramCARESActMember_fab7617a-0dbb-4bc6-bacf-11d8f7205b11" xlink:href="efoi-20220930.xsd#efoi_PaycheckProtectionProgramCARESActMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_bc2d9e88-2c8b-4c82-84ed-3227a87b0d1a" xlink:to="loc_efoi_PaycheckProtectionProgramCARESActMember_fab7617a-0dbb-4bc6-bacf-11d8f7205b11" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#IncomeTaxesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended" id="i069c262f17a54e638e9f4a65327155ce_IncomeTaxesNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_8e58cde0-48b0-44c8-aa95-4a955782aab8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_8e58cde0-48b0-44c8-aa95-4a955782aab8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_5a9b6cc9-e1bb-4d66-9148-08aa01a91a8a" xlink:href="efoi-20220930.xsd#efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_5a9b6cc9-e1bb-4d66-9148-08aa01a91a8a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_a0d3ce22-3396-4962-82b8-b5a2b32592b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_us-gaap_OperatingLossCarryforwards_a0d3ce22-3396-4962-82b8-b5a2b32592b3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_d2d9af44-7f6a-4e5e-9677-25a73e1f822f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_d2d9af44-7f6a-4e5e-9677-25a73e1f822f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_5bfe1414-1bf1-4527-8f6b-f585ec935d1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_5bfe1414-1bf1-4527-8f6b-f585ec935d1f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_5bfe1414-1bf1-4527-8f6b-f585ec935d1f" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_ee143c4e-3480-44b5-819d-a43ba3933809" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_ee143c4e-3480-44b5-819d-a43ba3933809" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_a198f242-bce8-4fbb-9b84-2070237b0d2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticCountryMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_ee143c4e-3480-44b5-819d-a43ba3933809" xlink:to="loc_us-gaap_DomesticCountryMember_a198f242-bce8-4fbb-9b84-2070237b0d2b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_f816cc2b-2093-40d9-8a45-81fd114397c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_ee143c4e-3480-44b5-819d-a43ba3933809" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_f816cc2b-2093-40d9-8a45-81fd114397c4" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails" xlink:type="extended" id="iacd5bdb274314d2288b128f73d315a60_StockholdersEquityJune2022andDecember2021PrivatePlacementDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_7df60da4-28c3-445a-aec5-a87e8bd43049" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_7df60da4-28c3-445a-aec5-a87e8bd43049" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_3e470cb5-5632-43e8-9689-1facf5cb9930" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_3e470cb5-5632-43e8-9689-1facf5cb9930" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_d0f302bc-6543-48aa-8093-61c8bce30032" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_d0f302bc-6543-48aa-8093-61c8bce30032" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_5085e8ab-d70b-47c8-b954-f1157d1e7064" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_5085e8ab-d70b-47c8-b954-f1157d1e7064" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_e6d2d807-f570-45dc-80c6-e9c206bcaf84" xlink:href="efoi-20220930.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_e6d2d807-f570-45dc-80c6-e9c206bcaf84" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3160e34d-d2c3-4437-8010-6117aaa08255" xlink:href="efoi-20220930.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3160e34d-d2c3-4437-8010-6117aaa08255" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_19008317-23ed-4ae0-a099-436cc77b9b36" xlink:href="efoi-20220930.xsd#efoi_PaymentsForClearingFees"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_PaymentsForClearingFees_19008317-23ed-4ae0-a099-436cc77b9b36" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_97bc33dd-f3aa-4e71-92b6-6c389efaaa83" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_97bc33dd-f3aa-4e71-92b6-6c389efaaa83" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_62a5df13-21a4-45d0-9c39-51658a1e70ce" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_62a5df13-21a4-45d0-9c39-51658a1e70ce" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_a34f6ac2-7053-4012-a2fd-af5c1446b62d" xlink:href="efoi-20220930.xsd#efoi_EstimatedProceedsFromIssuanceOfWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_a34f6ac2-7053-4012-a2fd-af5c1446b62d" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_3f46659a-629a-4ba6-998b-186b4fbe1015" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_3f46659a-629a-4ba6-998b-186b4fbe1015" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_fbb91fef-2316-4428-87ca-5e0b7b71d6b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_fbb91fef-2316-4428-87ca-5e0b7b71d6b2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_fbb91fef-2316-4428-87ca-5e0b7b71d6b2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_fbb91fef-2316-4428-87ca-5e0b7b71d6b2" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_fbb91fef-2316-4428-87ca-5e0b7b71d6b2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_30452cfc-6190-4599-8f08-db5cf6430872" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_fbb91fef-2316-4428-87ca-5e0b7b71d6b2" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_30452cfc-6190-4599-8f08-db5cf6430872" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_June2022PrivatePlacementMember_47b728e1-b4d3-42dd-a84d-295a9dc7f4fb" xlink:href="efoi-20220930.xsd#efoi_June2022PrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_30452cfc-6190-4599-8f08-db5cf6430872" xlink:to="loc_efoi_June2022PrivatePlacementMember_47b728e1-b4d3-42dd-a84d-295a9dc7f4fb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_December2021PrivatePlacementMember_f3465827-2b58-4609-a1ce-f418d7bdbc22" xlink:href="efoi-20220930.xsd#efoi_December2021PrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_30452cfc-6190-4599-8f08-db5cf6430872" xlink:to="loc_efoi_December2021PrivatePlacementMember_f3465827-2b58-4609-a1ce-f418d7bdbc22" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightAxis_9c9d7d0e-18e8-4d55-b269-ea15c40436a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:to="loc_us-gaap_ClassOfWarrantOrRightAxis_9c9d7d0e-18e8-4d55-b269-ea15c40436a2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightDomain_9c9d7d0e-18e8-4d55-b269-ea15c40436a2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ClassOfWarrantOrRightAxis_9c9d7d0e-18e8-4d55-b269-ea15c40436a2" xlink:to="loc_us-gaap_ClassOfWarrantOrRightDomain_9c9d7d0e-18e8-4d55-b269-ea15c40436a2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightDomain_bc057831-a17c-4435-8a03-6d32c6d7ff86" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ClassOfWarrantOrRightAxis_9c9d7d0e-18e8-4d55-b269-ea15c40436a2" xlink:to="loc_us-gaap_ClassOfWarrantOrRightDomain_bc057831-a17c-4435-8a03-6d32c6d7ff86" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PreFundedWarrantsMember_ffa49fa8-ae41-4cd4-addc-5876370ca7c6" xlink:href="efoi-20220930.xsd#efoi_PreFundedWarrantsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain_bc057831-a17c-4435-8a03-6d32c6d7ff86" xlink:to="loc_efoi_PreFundedWarrantsMember_ffa49fa8-ae41-4cd4-addc-5876370ca7c6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_0789d016-10c3-43f5-ac50-5127cb85ccdb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain_bc057831-a17c-4435-8a03-6d32c6d7ff86" xlink:to="loc_us-gaap_WarrantMember_0789d016-10c3-43f5-ac50-5127cb85ccdb" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityJune2021EquityOfferingDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails" xlink:type="extended" id="ice4205e37bd84a0ea133307086329be1_StockholdersEquityJune2021EquityOfferingDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_8801309f-9161-4872-b0ca-a806cf519499" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_8801309f-9161-4872-b0ca-a806cf519499" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_46deb0da-e8d2-4399-8268-287387383d79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_46deb0da-e8d2-4399-8268-287387383d79" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_1a4214d5-9ef5-41e9-88c1-9a0f2c1fb970" xlink:href="efoi-20220930.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_1a4214d5-9ef5-41e9-88c1-9a0f2c1fb970" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_08f36ad1-0c09-468b-ba8f-f4b95e0fd9e6" xlink:href="efoi-20220930.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_08f36ad1-0c09-468b-ba8f-f4b95e0fd9e6" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_9585afeb-f4df-48ac-8946-004c9eccb8a3" xlink:href="efoi-20220930.xsd#efoi_PaymentsForClearingFees"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_efoi_PaymentsForClearingFees_9585afeb-f4df-48ac-8946-004c9eccb8a3" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_5cda551c-bfca-440c-a4b5-5497ef23e154" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_5cda551c-bfca-440c-a4b5-5497ef23e154" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_fe47ccc0-112e-432c-809a-750dcd04761d" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_fe47ccc0-112e-432c-809a-750dcd04761d" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_5fda6e85-6169-44e7-a103-a7c0e16768c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_5fda6e85-6169-44e7-a103-a7c0e16768c5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_476b6bb3-c050-4625-b130-476d75c8d743" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_5fda6e85-6169-44e7-a103-a7c0e16768c5" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_476b6bb3-c050-4625-b130-476d75c8d743" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_476b6bb3-c050-4625-b130-476d75c8d743_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_476b6bb3-c050-4625-b130-476d75c8d743" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_476b6bb3-c050-4625-b130-476d75c8d743_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_84426a95-afac-4f1c-acae-412097cffe92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_476b6bb3-c050-4625-b130-476d75c8d743" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_84426a95-afac-4f1c-acae-412097cffe92" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_8fb04b42-7c94-41dc-969c-b0c1442e5c30" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_84426a95-afac-4f1c-acae-412097cffe92" xlink:to="loc_efoi_InstitutionalInvestorMember_8fb04b42-7c94-41dc-969c-b0c1442e5c30" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityPreferredStockDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails" xlink:type="extended" id="if3b02e775968487ebe3fd00f523afbfb_StockholdersEquityPreferredStockDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_b6dac01a-2fa4-4fab-aa47-41ff740bab7f" xlink:href="efoi-20220930.xsd#efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_b6dac01a-2fa4-4fab-aa47-41ff740bab7f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_8607501c-40f6-4768-9f32-cb937713cbff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_8607501c-40f6-4768-9f32-cb937713cbff" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_4fbc8324-9eb5-4e7c-b3e1-f88c7409440d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_4fbc8324-9eb5-4e7c-b3e1-f88c7409440d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_1545a833-1652-495b-8960-90fc87f6bb1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_1545a833-1652-495b-8960-90fc87f6bb1d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_1ad2814d-19ce-4c9b-abdc-99bb819e039b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_1ad2814d-19ce-4c9b-abdc-99bb819e039b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_9d4e5ec3-5d3a-4937-a842-f7923b771840" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_9d4e5ec3-5d3a-4937-a842-f7923b771840" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_a9c8b539-c5df-4474-b2ae-3158510328ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_a9c8b539-c5df-4474-b2ae-3158510328ea" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_c623a321-9991-488b-9043-4338528145ac" xlink:href="efoi-20220930.xsd#efoi_PercentageOfSeriesAPreferredStockEligibleToVote"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_c623a321-9991-488b-9043-4338528145ac" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_d4476ee8-b57f-421e-ba80-b78b4c874811" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_d4476ee8-b57f-421e-ba80-b78b4c874811" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_d4476ee8-b57f-421e-ba80-b78b4c874811_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_d4476ee8-b57f-421e-ba80-b78b4c874811" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_d4476ee8-b57f-421e-ba80-b78b4c874811_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_ce801b0e-e01c-4b8c-991b-3fec869ab36b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_d4476ee8-b57f-421e-ba80-b78b4c874811" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_ce801b0e-e01c-4b8c-991b-3fec869ab36b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember_5b74a416-81a1-4d28-9453-94b48fd6c971" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_ce801b0e-e01c-4b8c-991b-3fec869ab36b" xlink:to="loc_us-gaap_ConvertibleDebtMember_5b74a416-81a1-4d28-9453-94b48fd6c971" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_8852c0fb-cae0-4bad-8030-32d1e330a53e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_8852c0fb-cae0-4bad-8030-32d1e330a53e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_8852c0fb-cae0-4bad-8030-32d1e330a53e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8852c0fb-cae0-4bad-8030-32d1e330a53e" xlink:to="loc_us-gaap_EquityComponentDomain_8852c0fb-cae0-4bad-8030-32d1e330a53e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_8a3a8e68-6363-42c1-ad27-0470827af0f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8852c0fb-cae0-4bad-8030-32d1e330a53e" xlink:to="loc_us-gaap_EquityComponentDomain_8a3a8e68-6363-42c1-ad27-0470827af0f6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_808478e9-a635-47cc-8199-a2ababad0207" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_8a3a8e68-6363-42c1-ad27-0470827af0f6" xlink:to="loc_us-gaap_PreferredStockMember_808478e9-a635-47cc-8199-a2ababad0207" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_0cf8dd14-755d-4a0a-acc2-294bfaa804d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_8a3a8e68-6363-42c1-ad27-0470827af0f6" xlink:to="loc_us-gaap_CommonStockMember_0cf8dd14-755d-4a0a-acc2-294bfaa804d0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CounterpartyNameAxis_8901eb19-b451-4e2c-bb05-2ee80a50c769" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CounterpartyNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_srt_CounterpartyNameAxis_8901eb19-b451-4e2c-bb05-2ee80a50c769" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RepurchaseAgreementCounterpartyNameDomain_8901eb19-b451-4e2c-bb05-2ee80a50c769_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RepurchaseAgreementCounterpartyNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CounterpartyNameAxis_8901eb19-b451-4e2c-bb05-2ee80a50c769" xlink:to="loc_srt_RepurchaseAgreementCounterpartyNameDomain_8901eb19-b451-4e2c-bb05-2ee80a50c769_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RepurchaseAgreementCounterpartyNameDomain_44136e6e-9da3-4d6e-a64e-015aaa24c8c5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RepurchaseAgreementCounterpartyNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CounterpartyNameAxis_8901eb19-b451-4e2c-bb05-2ee80a50c769" xlink:to="loc_srt_RepurchaseAgreementCounterpartyNameDomain_44136e6e-9da3-4d6e-a64e-015aaa24c8c5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FusionParkLLCMember_b5bbba30-de73-4e98-ac97-7cb74dbf1a65" xlink:href="efoi-20220930.xsd#efoi_FusionParkLLCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain_44136e6e-9da3-4d6e-a64e-015aaa24c8c5" xlink:to="loc_efoi_FusionParkLLCMember_b5bbba30-de73-4e98-ac97-7cb74dbf1a65" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_BrilliantStartEnterpriseIncMember_fa50ce01-46c9-430f-9638-706e86638f68" xlink:href="efoi-20220930.xsd#efoi_BrilliantStartEnterpriseIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain_44136e6e-9da3-4d6e-a64e-015aaa24c8c5" xlink:to="loc_efoi_BrilliantStartEnterpriseIncMember_fa50ce01-46c9-430f-9638-706e86638f68" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_a6028fef-1782-4b71-a96a-35796de98af6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_us-gaap_StatementClassOfStockAxis_a6028fef-1782-4b71-a96a-35796de98af6" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_a6028fef-1782-4b71-a96a-35796de98af6_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_a6028fef-1782-4b71-a96a-35796de98af6" xlink:to="loc_us-gaap_ClassOfStockDomain_a6028fef-1782-4b71-a96a-35796de98af6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_019982dd-2b43-48f9-b8c6-7d74067ef5f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_a6028fef-1782-4b71-a96a-35796de98af6" xlink:to="loc_us-gaap_ClassOfStockDomain_019982dd-2b43-48f9-b8c6-7d74067ef5f5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_2fba68df-ac87-4eaf-9afa-b3d27410f1a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_019982dd-2b43-48f9-b8c6-7d74067ef5f5" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_2fba68df-ac87-4eaf-9afa-b3d27410f1a1" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityJune2020EquityOfferingDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails" xlink:type="extended" id="i823de92f91e54a778cf738b42846b686_StockholdersEquityJune2020EquityOfferingDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_b6140499-aad3-4dbf-8fca-4d439b17d59c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_b6140499-aad3-4dbf-8fca-4d439b17d59c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_acaa2bd0-c184-4aae-ac01-da46b5a73a7f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_acaa2bd0-c184-4aae-ac01-da46b5a73a7f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_65899493-f31c-49fd-81aa-8577fbf1ba58" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_65899493-f31c-49fd-81aa-8577fbf1ba58" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_4e43fee9-0d14-4d6c-b3c3-2e009fee1c38" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_4e43fee9-0d14-4d6c-b3c3-2e009fee1c38" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_a0e191c1-36d8-4da9-aba8-a19fa54bec33" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_a0e191c1-36d8-4da9-aba8-a19fa54bec33" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_8f8e642f-8f3f-42e4-8ba1-3f9952a0cea1" xlink:href="efoi-20220930.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_8f8e642f-8f3f-42e4-8ba1-3f9952a0cea1" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_78e1b2b7-ef53-402f-829c-690723b02efb" xlink:href="efoi-20220930.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_78e1b2b7-ef53-402f-829c-690723b02efb" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_2712dc40-16a1-4a6d-8a7e-2cc03aeb7b5b" xlink:href="efoi-20220930.xsd#efoi_PaymentsForClearingFees"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_PaymentsForClearingFees_2712dc40-16a1-4a6d-8a7e-2cc03aeb7b5b" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_ca14512f-fb7d-48f1-85ba-bdcda65fa433" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_ca14512f-fb7d-48f1-85ba-bdcda65fa433" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_7f4a8f2b-582e-4262-8c2b-31b9f40f315d" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_7f4a8f2b-582e-4262-8c2b-31b9f40f315d" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_d7bc6b35-e1c7-40d3-9b14-f7ea36c2fd20" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_d7bc6b35-e1c7-40d3-9b14-f7ea36c2fd20" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_b8598519-5385-4e08-af2b-406bde27c8c2" xlink:href="efoi-20220930.xsd#efoi_EstimatedProceedsFromIssuanceOfWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_b8598519-5385-4e08-af2b-406bde27c8c2" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_266c566e-5e29-4308-92db-929b2f9d948e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_266c566e-5e29-4308-92db-929b2f9d948e" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_8fa1e1c0-236e-44d4-80f2-c0c754934ec6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_8fa1e1c0-236e-44d4-80f2-c0c754934ec6" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_acd5103e-27bc-4a6c-878a-a0107c435395" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_acd5103e-27bc-4a6c-878a-a0107c435395" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_acd5103e-27bc-4a6c-878a-a0107c435395" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020InstitutionalInvestorMember_7369168d-161e-432d-8610-1e23ce204d4c" xlink:href="efoi-20220930.xsd#efoi_January2020InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:to="loc_efoi_January2020InstitutionalInvestorMember_7369168d-161e-432d-8610-1e23ce204d4c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_e67da86a-06cb-4201-bf51-1c0008abe784" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:to="loc_efoi_InstitutionalInvestorMember_e67da86a-06cb-4201-bf51-1c0008abe784" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingMember_d2ea7778-7f19-4458-ae29-0a7655150d6b" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:to="loc_efoi_January2020EquityOfferingMember_d2ea7778-7f19-4458-ae29-0a7655150d6b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingPrivatePlacementMember_42233015-5717-4e1f-8d08-3a2843f8a612" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingPrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:to="loc_efoi_January2020EquityOfferingPrivatePlacementMember_42233015-5717-4e1f-8d08-3a2843f8a612" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails" xlink:type="extended" id="i2adc162b615344e0bdaac0bbdca3271c_StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_00d572de-ea47-4bb9-a14e-f231cf12d77c" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_00d572de-ea47-4bb9-a14e-f231cf12d77c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_b7598081-d676-46ae-b46c-88edead5b1d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_b7598081-d676-46ae-b46c-88edead5b1d8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_44805f99-b802-485e-84ad-d0a9bacb9570" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_44805f99-b802-485e-84ad-d0a9bacb9570" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4b78ed44-0058-4853-8275-861f99ebdcc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4b78ed44-0058-4853-8275-861f99ebdcc5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_98337b0c-7a2d-4693-851b-a087758745f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4b78ed44-0058-4853-8275-861f99ebdcc5" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_98337b0c-7a2d-4693-851b-a087758745f8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_98337b0c-7a2d-4693-851b-a087758745f8_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_98337b0c-7a2d-4693-851b-a087758745f8" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_98337b0c-7a2d-4693-851b-a087758745f8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4c3f125c-dc54-46b9-bc63-faadb4b14940" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_98337b0c-7a2d-4693-851b-a087758745f8" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4c3f125c-dc54-46b9-bc63-faadb4b14940" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4c3f125c-dc54-46b9-bc63-faadb4b14940" xlink:to="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_c40e0128-d163-4192-8fc3-5de120cd2af0" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:to="loc_efoi_InstitutionalInvestorMember_c40e0128-d163-4192-8fc3-5de120cd2af0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020InstitutionalInvestorMember_525017bb-f0d8-4aa7-8335-a1d7e0b78094" xlink:href="efoi-20220930.xsd#efoi_January2020InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:to="loc_efoi_January2020InstitutionalInvestorMember_525017bb-f0d8-4aa7-8335-a1d7e0b78094" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingPrivatePlacementMember_f3e9de2b-ed66-4f88-9af5-271afe76d3fa" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingPrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:to="loc_efoi_January2020EquityOfferingPrivatePlacementMember_f3e9de2b-ed66-4f88-9af5-271afe76d3fa" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityStockBasedCompensationDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="extended" id="ic6cba1e6163343d8afa1f57dc505af6c_StockholdersEquityStockBasedCompensationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_be0ceef2-e8f4-4e29-b325-b512bdf89af4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_be0ceef2-e8f4-4e29-b325-b512bdf89af4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_70fb0576-845d-4825-b480-a272f2941fe8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_70fb0576-845d-4825-b480-a272f2941fe8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_a5f7368d-bdff-44d9-a3d4-08d3d961ddc7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_a5f7368d-bdff-44d9-a3d4-08d3d961ddc7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_41e6315c-02fd-4bd6-b1f1-389531872659" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_41e6315c-02fd-4bd6-b1f1-389531872659" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_bbea7659-4b88-474d-992a-44929f391634" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_41e6315c-02fd-4bd6-b1f1-389531872659" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_bbea7659-4b88-474d-992a-44929f391634" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_bbea7659-4b88-474d-992a-44929f391634_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_bbea7659-4b88-474d-992a-44929f391634" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_bbea7659-4b88-474d-992a-44929f391634_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_bbea7659-4b88-474d-992a-44929f391634" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_2e48fd1e-ffd0-4930-8ac5-49822e2efd7a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:to="loc_us-gaap_CostOfSalesMember_2e48fd1e-ffd0-4930-8ac5-49822e2efd7a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f506fe74-3164-4727-bb7b-ef55fc2e5bd2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f506fe74-3164-4727-bb7b-ef55fc2e5bd2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_cd814aec-fd7e-4938-a3b5-53984be91eb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_cd814aec-fd7e-4938-a3b5-53984be91eb2" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityEstimatesUtilizedDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails" xlink:type="extended" id="i110b8de57bbe4dab919f2dfeb0295767_StockholdersEquityEstimatesUtilizedDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_cd49a77c-f4a4-4380-9ba9-a2bed4ddd860" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_cd49a77c-f4a4-4380-9ba9-a2bed4ddd860" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_3c51db68-54ea-4493-9c3c-19fbb33f7973" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_3c51db68-54ea-4493-9c3c-19fbb33f7973" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9238d142-c552-4b34-b2a2-22b49f0879ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9238d142-c552-4b34-b2a2-22b49f0879ec" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_54b9f469-6c44-410d-b184-afe2a280a60b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_54b9f469-6c44-410d-b184-afe2a280a60b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_494eb1cf-6f4a-4b1a-a758-b131c35e867d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_494eb1cf-6f4a-4b1a-a758-b131c35e867d" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_f4287b7e-77ca-4b5f-a3ba-a146fe995b12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_f4287b7e-77ca-4b5f-a3ba-a146fe995b12" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1cc76eae-7443-4657-8180-89e24b1633e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1cc76eae-7443-4657-8180-89e24b1633e1" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_b6f74989-b1f4-4937-a0ce-af9805fd0666" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1cc76eae-7443-4657-8180-89e24b1633e1" xlink:to="loc_us-gaap_AwardTypeAxis_b6f74989-b1f4-4937-a0ce-af9805fd0666" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_b6f74989-b1f4-4937-a0ce-af9805fd0666_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_b6f74989-b1f4-4937-a0ce-af9805fd0666" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_b6f74989-b1f4-4937-a0ce-af9805fd0666_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_47126e94-7b37-46df-b9a3-7eacb6a6ed67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_b6f74989-b1f4-4937-a0ce-af9805fd0666" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_47126e94-7b37-46df-b9a3-7eacb6a6ed67" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_30b12d9d-c7f6-4e93-918b-8f49d42ae5a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_47126e94-7b37-46df-b9a3-7eacb6a6ed67" xlink:to="loc_us-gaap_EmployeeStockOptionMember_30b12d9d-c7f6-4e93-918b-8f49d42ae5a8" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityRestrictedStockUnitsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails" xlink:type="extended" id="i2cfca86c0a9248ceac4b1ad962a44491_StockholdersEquityRestrictedStockUnitsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_7566f046-7cec-4758-a694-03ec3793fe46" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_7566f046-7cec-4758-a694-03ec3793fe46" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_63e7800e-37a1-4413-9b16-9792a520a2ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_63e7800e-37a1-4413-9b16-9792a520a2ec" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_dc3d55ea-d9b7-4577-9092-0dc6b3db82f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_dc3d55ea-d9b7-4577-9092-0dc6b3db82f3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_54ee6cf0-c151-4b1b-aeb8-f8b663c66ae4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_f4e849fb-aa0e-4b13-8786-4d1bbb089e1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_f4e849fb-aa0e-4b13-8786-4d1bbb089e1d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_47c23e84-905a-4ce7-af49-8e64c0c5e063" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_47c23e84-905a-4ce7-af49-8e64c0c5e063" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_3c31cc16-97a4-4b95-89e3-04abae3a7475" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_3c31cc16-97a4-4b95-89e3-04abae3a7475" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2645981a-953a-4727-939d-c42aa9f12ccc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_88bed84d-0f67-4037-a9bc-2998b00cdd95" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_88bed84d-0f67-4037-a9bc-2998b00cdd95" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_49c369ea-f961-45d8-a19a-a25338434862" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_88bed84d-0f67-4037-a9bc-2998b00cdd95" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_49c369ea-f961-45d8-a19a-a25338434862" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2fb5469f-7765-4751-92d1-738d38db0595" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2fb5469f-7765-4751-92d1-738d38db0595" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_f704947a-46fd-4109-bb1d-81cec887e506" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2fb5469f-7765-4751-92d1-738d38db0595" xlink:to="loc_us-gaap_AwardTypeAxis_f704947a-46fd-4109-bb1d-81cec887e506" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f704947a-46fd-4109-bb1d-81cec887e506_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_f704947a-46fd-4109-bb1d-81cec887e506" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f704947a-46fd-4109-bb1d-81cec887e506_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_97911c74-2bd8-41ec-8117-9fa82f195d88" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_f704947a-46fd-4109-bb1d-81cec887e506" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_97911c74-2bd8-41ec-8117-9fa82f195d88" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_3ec48f22-5f17-4029-ab40-0bc43c85a8c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_97911c74-2bd8-41ec-8117-9fa82f195d88" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_3ec48f22-5f17-4029-ab40-0bc43c85a8c5" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#CommitmentsandContingenciesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails" xlink:type="extended" id="i04b86ae77a914f5f8829ae05739869c1_CommitmentsandContingenciesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentLineItems_1436fd2b-a80f-4d61-9381-0e319c088b95" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermPurchaseCommitmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PurchaseObligation_fd10fe13-d46a-4a82-aea9-899c79c7bf9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PurchaseObligation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_1436fd2b-a80f-4d61-9381-0e319c088b95" xlink:to="loc_us-gaap_PurchaseObligation_fd10fe13-d46a-4a82-aea9-899c79c7bf9f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentAmount_72bf9e12-a3ae-4c08-b58d-8f5f565f3478" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermPurchaseCommitmentAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_1436fd2b-a80f-4d61-9381-0e319c088b95" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentAmount_72bf9e12-a3ae-4c08-b58d-8f5f565f3478" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentTable_1a1fc735-d889-4a51-a6e8-a769468c1b4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermPurchaseCommitmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_1436fd2b-a80f-4d61-9381-0e319c088b95" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentTable_1a1fc735-d889-4a51-a6e8-a769468c1b4a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_915550c6-df53-43a2-96a3-9d31c3300d65" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentTable_1a1fc735-d889-4a51-a6e8-a769468c1b4a" xlink:to="loc_srt_StatementScenarioAxis_915550c6-df53-43a2-96a3-9d31c3300d65" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_915550c6-df53-43a2-96a3-9d31c3300d65_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_915550c6-df53-43a2-96a3-9d31c3300d65" xlink:to="loc_srt_ScenarioUnspecifiedDomain_915550c6-df53-43a2-96a3-9d31c3300d65_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_06d66e17-e462-4b80-9540-7536f40b74e5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_915550c6-df53-43a2-96a3-9d31c3300d65" xlink:to="loc_srt_ScenarioUnspecifiedDomain_06d66e17-e462-4b80-9540-7536f40b74e5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_138270d2-660d-49d3-87e3-f502ef7f5ef8" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ScenarioUnspecifiedDomain_06d66e17-e462-4b80-9540-7536f40b74e5" xlink:to="loc_srt_ScenarioForecastMember_138270d2-660d-49d3-87e3-f502ef7f5ef8" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/OtherIncomeDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#OtherIncomeDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/OtherIncomeDetails" xlink:type="extended" id="ief82bbcfbaf3493296544d0d588ab538_OtherIncomeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct_35fa3d13-be39-4d02-9df3-259a51588833" xlink:href="efoi-20220930.xsd#efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct_35fa3d13-be39-4d02-9df3-259a51588833" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent_8ccaa1dd-db06-4a79-841f-c30debf0f42d" xlink:href="efoi-20220930.xsd#efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent_8ccaa1dd-db06-4a79-841f-c30debf0f42d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLoanOriginations1_0ef3ba40-dc35-455b-839e-dc3c859d3672" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLoanOriginations1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_us-gaap_ProceedsFromLoanOriginations1_0ef3ba40-dc35-455b-839e-dc3c859d3672" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_11c6f957-9d42-4fd1-be76-0ed36302d27b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_11c6f957-9d42-4fd1-be76-0ed36302d27b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_cb35f91a-b60f-4497-8b9f-4346219eb520" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_cb35f91a-b60f-4497-8b9f-4346219eb520" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_c9c27952-b2b5-4086-9264-85213e57b6b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_us-gaap_DebtInstrumentTable_c9c27952-b2b5-4086-9264-85213e57b6b7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_6ecb6da4-4640-4071-8809-a27fe977c3e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_c9c27952-b2b5-4086-9264-85213e57b6b7" xlink:to="loc_us-gaap_DebtInstrumentAxis_6ecb6da4-4640-4071-8809-a27fe977c3e7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_6ecb6da4-4640-4071-8809-a27fe977c3e7_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_6ecb6da4-4640-4071-8809-a27fe977c3e7" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_6ecb6da4-4640-4071-8809-a27fe977c3e7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_35b0bc88-538c-4c28-bb59-8726d8671ea1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_6ecb6da4-4640-4071-8809-a27fe977c3e7" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_35b0bc88-538c-4c28-bb59-8726d8671ea1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaycheckProtectionProgramCARESActMember_a1862fbe-f16c-4c51-bb25-7664b483179c" xlink:href="efoi-20220930.xsd#efoi_PaycheckProtectionProgramCARESActMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_35b0bc88-538c-4c28-bb59-8726d8671ea1" xlink:to="loc_efoi_PaycheckProtectionProgramCARESActMember_a1862fbe-f16c-4c51-bb25-7664b483179c" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#RelatedPartyTransactionDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails" xlink:type="extended" id="if775b731faae452c898eb2197f7c1415_RelatedPartyTransactionDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_c40b07ba-9622-46ce-802e-f42b55a4f574" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:to="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_c40b07ba-9622-46ce-802e-f42b55a4f574" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionRate_8cf32c67-f64a-4d71-b711-df47296d73c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:to="loc_us-gaap_RelatedPartyTransactionRate_8cf32c67-f64a-4d71-b711-df47296d73c7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_1aa537be-a33e-41ff-85a2-3b79e900b204" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DueToRelatedPartiesCurrentAndNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:to="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_1aa537be-a33e-41ff-85a2-3b79e900b204" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_c031f334-a941-4f4b-82dc-f2a785348aeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_c031f334-a941-4f4b-82dc-f2a785348aeb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_c031f334-a941-4f4b-82dc-f2a785348aeb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_c031f334-a941-4f4b-82dc-f2a785348aeb" xlink:to="loc_us-gaap_RelatedPartyDomain_c031f334-a941-4f4b-82dc-f2a785348aeb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_3c5c6be8-71c8-4a7f-b48b-cbad5c274e32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_c031f334-a941-4f4b-82dc-f2a785348aeb" xlink:to="loc_us-gaap_RelatedPartyDomain_3c5c6be8-71c8-4a7f-b48b-cbad5c274e32" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember_2cea4d91-e9f6-4fbb-bfc0-153c98ba9c2b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_3c5c6be8-71c8-4a7f-b48b-cbad5c274e32" xlink:to="loc_srt_DirectorMember_2cea4d91-e9f6-4fbb-bfc0-153c98ba9c2b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis_01332395-9de1-4aac-b694-83f400d6e4b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:to="loc_us-gaap_RelatedPartyTransactionAxis_01332395-9de1-4aac-b694-83f400d6e4b4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_01332395-9de1-4aac-b694-83f400d6e4b4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_01332395-9de1-4aac-b694-83f400d6e4b4" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_01332395-9de1-4aac-b694-83f400d6e4b4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_78caf3c2-01fb-4448-8271-1ef2b267b896" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_01332395-9de1-4aac-b694-83f400d6e4b4" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_78caf3c2-01fb-4448-8271-1ef2b267b896" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022PromissoryNoteMember_00b58887-4357-4714-b7eb-b0c3cbecf566" xlink:href="efoi-20220930.xsd#efoi_A2022PromissoryNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_78caf3c2-01fb-4448-8271-1ef2b267b896" xlink:to="loc_efoi_A2022PromissoryNoteMember_00b58887-4357-4714-b7eb-b0c3cbecf566" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:to="loc_srt_StatementScenarioAxis_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00" xlink:to="loc_srt_ScenarioUnspecifiedDomain_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_f66e7468-36b7-4f7b-bc62-94f58adf49b6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00" xlink:to="loc_srt_ScenarioUnspecifiedDomain_f66e7468-36b7-4f7b-bc62-94f58adf49b6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_93d458f8-8b5c-4172-9d53-f044e4980664" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ScenarioUnspecifiedDomain_f66e7468-36b7-4f7b-bc62-94f58adf49b6" xlink:to="loc_srt_ScenarioForecastMember_93d458f8-8b5c-4172-9d53-f044e4980664" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/SubsequentEventsDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#SubsequentEventsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/SubsequentEventsDetails" xlink:type="extended" id="ia8a970cc7fa749a09d04ca928868a593_SubsequentEventsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_ab86b7f6-c393-422d-b7cf-f8a422058dc6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_ab86b7f6-c393-422d-b7cf-f8a422058dc6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_de87f01b-d6ef-47b2-87f8-32ae6a608363" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_de87f01b-d6ef-47b2-87f8-32ae6a608363" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_636fc69f-d30e-43a3-8da1-259365e97e91" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_636fc69f-d30e-43a3-8da1-259365e97e91" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_13ca7983-b4a5-401e-a444-0d6b8c46353a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_13ca7983-b4a5-401e-a444-0d6b8c46353a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_637b08b3-a2ad-4d3e-9f5b-60b44d16eb9c" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_637b08b3-a2ad-4d3e-9f5b-60b44d16eb9c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_ac9125a6-2846-40b7-b46f-3b5b132647a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_ac9125a6-2846-40b7-b46f-3b5b132647a3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_ac9125a6-2846-40b7-b46f-3b5b132647a3_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_ac9125a6-2846-40b7-b46f-3b5b132647a3" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_ac9125a6-2846-40b7-b46f-3b5b132647a3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_f82ff909-fdd9-4af7-94e4-355588ece23b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_ac9125a6-2846-40b7-b46f-3b5b132647a3" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_f82ff909-fdd9-4af7-94e4-355588ece23b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_ebdf75e8-3bb1-4bc7-9e9a-4249763fdb69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_f82ff909-fdd9-4af7-94e4-355588ece23b" xlink:to="loc_us-gaap_SubsequentEventMember_ebdf75e8-3bb1-4bc7-9e9a-4249763fdb69" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis_c5678350-cbc5-47c7-8b17-a0e820ac9d4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_RelatedPartyTransactionAxis_c5678350-cbc5-47c7-8b17-a0e820ac9d4a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_c5678350-cbc5-47c7-8b17-a0e820ac9d4a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_c5678350-cbc5-47c7-8b17-a0e820ac9d4a" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_c5678350-cbc5-47c7-8b17-a0e820ac9d4a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_2aaabed3-9339-46e0-96c5-997fa347f850" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_c5678350-cbc5-47c7-8b17-a0e820ac9d4a" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_2aaabed3-9339-46e0-96c5-997fa347f850" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_HuangNoteMember_df3d0956-41c8-4d07-8f35-ddd81b8444bc" xlink:href="efoi-20220930.xsd#efoi_HuangNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_2aaabed3-9339-46e0-96c5-997fa347f850" xlink:to="loc_efoi_HuangNoteMember_df3d0956-41c8-4d07-8f35-ddd81b8444bc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_0f4db764-1903-4259-b301-3db580bcc5ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_0f4db764-1903-4259-b301-3db580bcc5ba" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_0f4db764-1903-4259-b301-3db580bcc5ba_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_0f4db764-1903-4259-b301-3db580bcc5ba" xlink:to="loc_us-gaap_RelatedPartyDomain_0f4db764-1903-4259-b301-3db580bcc5ba_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_1b584ea4-437c-42c2-b326-1b0f5e9fcc07" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_0f4db764-1903-4259-b301-3db580bcc5ba" xlink:to="loc_us-gaap_RelatedPartyDomain_1b584ea4-437c-42c2-b326-1b0f5e9fcc07" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember_970f73c6-589b-437c-a261-317b6f276f81" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_1b584ea4-437c-42c2-b326-1b0f5e9fcc07" xlink:to="loc_srt_DirectorMember_970f73c6-589b-437c-a261-317b6f276f81" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_2cc977a7-eb78-48e0-b26d-f4735777b5fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_DebtInstrumentAxis_2cc977a7-eb78-48e0-b26d-f4735777b5fd" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_2cc977a7-eb78-48e0-b26d-f4735777b5fd_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_2cc977a7-eb78-48e0-b26d-f4735777b5fd" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_2cc977a7-eb78-48e0-b26d-f4735777b5fd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_f1cb9c48-1987-4fa9-9dff-7fa2f777f5da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_2cc977a7-eb78-48e0-b26d-f4735777b5fd" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_f1cb9c48-1987-4fa9-9dff-7fa2f777f5da" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OctoberPartitionedNoteMember_cf8225c3-4992-487e-96c6-4c9365855965" xlink:href="efoi-20220930.xsd#efoi_OctoberPartitionedNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_f1cb9c48-1987-4fa9-9dff-7fa2f777f5da" xlink:to="loc_efoi_OctoberPartitionedNoteMember_cf8225c3-4992-487e-96c6-4c9365855965" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2021StreetervilleNoteMember_da48ebf3-9d6d-4a8b-bbcc-a696f3b2a644" xlink:href="efoi-20220930.xsd#efoi_A2021StreetervilleNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_f1cb9c48-1987-4fa9-9dff-7fa2f777f5da" xlink:to="loc_efoi_A2021StreetervilleNoteMember_da48ebf3-9d6d-4a8b-bbcc-a696f3b2a644" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PromissoryNoteAxis_3f7a1f96-7530-48fd-a664-8d4b37fab443" xlink:href="efoi-20220930.xsd#efoi_PromissoryNoteAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_efoi_PromissoryNoteAxis_3f7a1f96-7530-48fd-a664-8d4b37fab443" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PromissoryNoteDomain_3f7a1f96-7530-48fd-a664-8d4b37fab443_default" xlink:href="efoi-20220930.xsd#efoi_PromissoryNoteDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_efoi_PromissoryNoteAxis_3f7a1f96-7530-48fd-a664-8d4b37fab443" xlink:to="loc_efoi_PromissoryNoteDomain_3f7a1f96-7530-48fd-a664-8d4b37fab443_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PromissoryNoteDomain_af0ab9ee-acfd-4620-bc38-573e12b0c00f" xlink:href="efoi-20220930.xsd#efoi_PromissoryNoteDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_efoi_PromissoryNoteAxis_3f7a1f96-7530-48fd-a664-8d4b37fab443" xlink:to="loc_efoi_PromissoryNoteDomain_af0ab9ee-acfd-4620-bc38-573e12b0c00f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PartitionedNoteMember_1ed9b2b4-4b38-48f6-9f43-a22b00308172" xlink:href="efoi-20220930.xsd#efoi_PartitionedNoteMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_efoi_PromissoryNoteDomain_af0ab9ee-acfd-4620-bc38-573e12b0c00f" xlink:to="loc_efoi_PartitionedNoteMember_1ed9b2b4-4b38-48f6-9f43-a22b00308172" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfArrangementAxis_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_TypeOfArrangementAxis_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TypeOfArrangementAxis_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_a5d5966a-28a5-46a5-ada2-a19d3d9b4d2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TypeOfArrangementAxis_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_a5d5966a-28a5-46a5-ada2-a19d3d9b4d2a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ExchangeAgreementMember_f5ed6a0f-2be4-4a1d-933e-a273ace2f9fc" xlink:href="efoi-20220930.xsd#efoi_ExchangeAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_a5d5966a-28a5-46a5-ada2-a19d3d9b4d2a" xlink:to="loc_efoi_ExchangeAgreementMember_f5ed6a0f-2be4-4a1d-933e-a273ace2f9fc" xlink:type="arc" order="0"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>efoi-20220930_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 2022 Workiva-->
<!--r:a82ef2f0-ede8-4d32-8f58-fa18bc743a3a,g:58e0cf05-7a74-4b84-ba8e-bd6d336a4f21-->
<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_GeographicConcentrationRiskMember_23b5be89-4e1a-48be-b015-f5dadff53afd_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncreaseDecreaseInStockholdersEquityRollForward_74b7f17a-1f7b-4c8f-9212-00e094a861fa_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LesseeOperatingLeaseLiabilityPaymentsDue_30c22e41-ff2b-4119-9d90-bb00e15633b1_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RelatedPartyTransactionsAbstract_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transactions [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract" xlink:to="lab_us-gaap_RelatedPartyTransactionsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_02796e97-fc60-4dbe-a839-066a385f6ea6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DebtInstrumentCarryingAmount_cea926e8-f634-49e3-b66d-ea3f5edde7e1_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityAddressPostalZipCode_f726f05e-10de-4959-8e9d-b0773aee7c67_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/2022/dei-2022.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_FinanceLeaseRightOfUseAsset_69d88e43-9b15-4582-a292-032f35c2a681_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PropertyPlantAndEquipmentAbstract_b4daa4f1-0a4d-4536-b746-17af86656ddc_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PreferredStockSharesOutstanding_79b6875d-ac34-4f19-82ad-a43f28ca25a1_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_c5ba2daf-180e-48b3-a7bf-a553a653a391_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-20220930.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_4b6ce11b-dc3b-4d26-bf32-c3b2197d05af_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-20220930.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_DebtInstrumentAxis_def8f4d3-72bb-41f0-a709-a29f4b54e08b_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_BrilliantStartEnterpriseIncMember_543dcc0f-90e0-46a5-8665-32367fc31b3e_terseLabel_en-US" xlink:label="lab_efoi_BrilliantStartEnterpriseIncMember" xlink: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_BrilliantStartEnterpriseIncMember_label_en-US" xlink:label="lab_efoi_BrilliantStartEnterpriseIncMember" xlink: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 Enterprise Inc. [Member]</link:label>
    <link:label id="lab_efoi_BrilliantStartEnterpriseIncMember_documentation_en-US" xlink:label="lab_efoi_BrilliantStartEnterpriseIncMember" 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 Enterprise Inc.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_BrilliantStartEnterpriseIncMember" xlink:href="efoi-20220930.xsd#efoi_BrilliantStartEnterpriseIncMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_BrilliantStartEnterpriseIncMember" xlink:to="lab_efoi_BrilliantStartEnterpriseIncMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiability_9b06bbe5-f311-414c-b197-6ba3a9a00e60_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_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PropertyPlantAndEquipmentGross_b6db347c-8d6f-48d3-8041-c853136d4ef7_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, gross</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LineOfCreditFacilityMaximumBorrowingCapacity_45f2d231-6481-45f1-bd52-0a8904c17336_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_IncomeTaxDisclosureAbstract_fedf68c2-3b8a-4af1-b6f7-60a1609ccedf_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_ed8dbdc9-536d-4575-bf9b-29282ae197c4_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">Maximum redemption 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-20220930.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_RestructuringReserve_23e8cf1b-1216-4fde-8ff5-986e6780cbf3_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">Balance at December 31, 2020</link:label>
    <link:label id="lab_us-gaap_RestructuringReserve_0fd5b97d-43e1-43c4-9061-ff7e7304f3ce_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">Balance at September 30, 2021</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SoftwareAndSoftwareDevelopmentCostsMember_344ed891-d6f4-4af1-a0b2-a5319aba38ef_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_AccruedEmployeeBenefitsCurrent_043649dd-5901-4afe-b909-cfd69868f2b3_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_FairValueOfFinancialInstrumentsPolicy_30d88663-bcc2-4ba7-8f34-6ae315194369_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_MMMLEDProductsMember_74bc44f6-6d35-4239-a723-c37dd4951788_terseLabel_en-US" xlink:label="lab_efoi_MMMLEDProductsMember" xlink: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 LED Products</link:label>
    <link:label id="lab_efoi_MMMLEDProductsMember_label_en-US" xlink:label="lab_efoi_MMMLEDProductsMember" xlink: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 LED Products [Member]</link:label>
    <link:label id="lab_efoi_MMMLEDProductsMember_documentation_en-US" xlink:label="lab_efoi_MMMLEDProductsMember" 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 LED Products</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_MMMLEDProductsMember" xlink:href="efoi-20220930.xsd#efoi_MMMLEDProductsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_MMMLEDProductsMember" xlink:to="lab_efoi_MMMLEDProductsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_af1480ac-4e66-4044-a2fd-86f24884298f_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_us-gaap_LesseeOperatingLeaseDiscountRate_9dc85c82-e938-4076-8d9d-59e5a9d50d6e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_USNavyMechanicalContractorMember_7d3a92bb-8d2f-4c5f-9a65-5cf5355734f7_terseLabel_en-US" xlink:label="lab_efoi_USNavyMechanicalContractorMember" xlink: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. Navy Mechanical Contractor</link:label>
    <link:label id="lab_efoi_USNavyMechanicalContractorMember_label_en-US" xlink:label="lab_efoi_USNavyMechanicalContractorMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">U.S. Navy Mechanical Contractor [Member]</link:label>
    <link:label id="lab_efoi_USNavyMechanicalContractorMember_documentation_en-US" xlink:label="lab_efoi_USNavyMechanicalContractorMember" 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">U.S. Navy Mechanical Contractor</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_USNavyMechanicalContractorMember" xlink:href="efoi-20220930.xsd#efoi_USNavyMechanicalContractorMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_USNavyMechanicalContractorMember" xlink:to="lab_efoi_USNavyMechanicalContractorMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Depreciation_a452a783-a682-4b6c-8a25-795ea8d4bbd0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_b5de848f-1815-485c-803f-aa8f4580dc2d_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" 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">Exercised (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink: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, Exercises in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfDebt_51032d3f-240c-4bcc-89ab-f9092accb6e1_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_a332466c-420f-4511-a21b-a67a86a3a42f_verboseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfDebt" 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">Proceeds from issuance of debt</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DebtInstrumentInterestRateStatedPercentage_2d773242-cdc2-453b-b76c-9cf7ccf2a768_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_398bcc33-98aa-442b-9403-10ca23850b65_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink: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 convertible securities</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_DebtPrepaymentMaximumPercentage_ced4c3ad-25fa-440f-87f0-e2524505f717_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-20220930.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_AdditionalPaidInCapitalCommonStock_6956fb75-1949-4620-85d8-6a58f3f9a70d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_4b91cb52-bc93-4faf-985a-13c5f51060e3_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DomesticCountryMember_a392a858-847f-45c5-8ee8-e6a71facf245_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_968f5197-a755-4889-a464-adad6650c32c_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink: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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_7f21276d-7d92-4338-ac23-558daeb2e7f1_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" 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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink: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 and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeaseOperatingLeaseCost_4aa7f3b1-1801-4d41-9a00-f00012ab88de_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-20220930.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_NetIncomeLoss_23b2b0a0-6d5c-4a94-b1a6-a1a00a12513d_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_2e64615b-e4cf-4132-bc9c-4df60b15cc17_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_54440cd7-46d2-4bd4-84c5-cf030c3d63fe_verboseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" 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">Securities excluded from net loss per share calculation (less than for options in the three months ended June 30, 2020) (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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LesseeFinanceLeasesTextBlock_9fa2970c-f5d0-4ade-b046-1d17d14c01e2_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_SubsequentEventTypeAxis_6d29b945-8569-4354-a440-d45029a3cabd_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_A2022PromissoryNoteMember_261fec4f-d044-4949-b418-406eb6a1fec2_terseLabel_en-US" xlink:label="lab_efoi_A2022PromissoryNoteMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022 Promissory Note</link:label>
    <link:label id="lab_efoi_A2022PromissoryNoteMember_label_en-US" xlink:label="lab_efoi_A2022PromissoryNoteMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022 Promissory Note [Member]</link:label>
    <link:label id="lab_efoi_A2022PromissoryNoteMember_documentation_en-US" xlink:label="lab_efoi_A2022PromissoryNoteMember" 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">2022 Promissory Note [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022PromissoryNoteMember" xlink:href="efoi-20220930.xsd#efoi_A2022PromissoryNoteMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_A2022PromissoryNoteMember" xlink:to="lab_efoi_A2022PromissoryNoteMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_750d2145-7d3d-4a7e-a078-1ab7fa0b7d4a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_SubsequentEventTypeDomain_a7f0cdbb-9ea5-4b36-ad85-7b8829c6d81d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_StatementScenarioAxis_7423f2de-086d-44db-97d3-dc5fc262ee16_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_7c70b1b4-75bd-4ec6-941f-6a1e7e417c12_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-20220930.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_RelatedPartyTransactionRate_b821be78-e70e-414c-83ea-15574ce2224d_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionRate" xlink: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_RelatedPartyTransactionRate_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction, Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionRate" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionRate" xlink:to="lab_us-gaap_RelatedPartyTransactionRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_ee10781f-46fb-4fe1-b728-ad17fe10d9d8_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PaymentsOfFinancingCosts_f026431f-a153-46e7-86a9-d07df5d121cb_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfFinancingCosts" 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">Deferred financing costs paid</link:label>
    <link:label id="lab_us-gaap_PaymentsOfFinancingCosts_label_en-US" xlink:label="lab_us-gaap_PaymentsOfFinancingCosts" xlink: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 Financing Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfFinancingCosts" xlink:to="lab_us-gaap_PaymentsOfFinancingCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyDomain_e6e1a7a1-9263-458e-b1fd-6957dc6c4a2d_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party [Domain]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyDomain_label_en-US" xlink:label="lab_us-gaap_RelatedPartyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyDomain" xlink:to="lab_us-gaap_RelatedPartyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PaymentsForPlacementAgentCommissions_717cf0b4-b564-4f69-bd8e-854c9cb84888_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-20220930.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_IncomeLossFromContinuingOperationsPerDilutedShare_ff3bda53-60b4-4c5d-9e7e-f6a7a33137f6_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink: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, diluted (USD per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink: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 Diluted Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_de8f2620-ce9d-43ed-9c9c-7ec78b80ec6c_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_09a70ee5-a73a-4c0c-b7db-75c7c70f44f0_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-20220930.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_efoi_InventoryValuationReservesWriteOffs_15d4f893-e765-4482-b947-eee22fd49ea7_terseLabel_en-US" xlink:label="lab_efoi_InventoryValuationReservesWriteOffs" xlink: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 for disposed inventory</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesWriteOffs_label_en-US" xlink:label="lab_efoi_InventoryValuationReservesWriteOffs" xlink: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, Write-Offs</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesWriteOffs_documentation_en-US" xlink:label="lab_efoi_InventoryValuationReservesWriteOffs" 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, Write-Offs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesWriteOffs" xlink:href="efoi-20220930.xsd#efoi_InventoryValuationReservesWriteOffs"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_InventoryValuationReservesWriteOffs" xlink:to="lab_efoi_InventoryValuationReservesWriteOffs" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_InventoryValuationReservesProvisionAccrual_6df8863f-16bb-45da-852c-ae797d38dec7_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-20220930.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_StatementOfCashFlowsAbstract_9020e952-d703-4571-8cf5-2b7074e4e44a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityAddressStateOrProvince_500397f2-9b69-41a7-a136-04f4a7b8def2_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/2022/dei-2022.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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_c5bfb866-49d8-4195-9b5f-6e0473f4a432_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AwardTypeAxis_3fbb6a8e-60a8-4d65-bc7c-5984eec2ae7a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_WeightedAverageNumberOfSharesOutstandingBasicAbstract_96efa944-9bfd-437f-aebd-6332146dce43_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink: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_WeightedAverageNumberOfSharesOutstandingBasicAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink: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 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_5e607e7a-325f-4b8a-a32d-be2ab40f1cb9_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 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_RestructuringCosts_07a06808-d694-4751-abb8-cf1c0d858f9b_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 expense (recovery)</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingLeaseLiabilityCurrent_84012f68-b5dd-42a0-8d7b-17356ec3bc60_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_ExchangeAgreementMember_d6ac53f4-d53e-4062-a0fc-79d52fbda3b0_terseLabel_en-US" xlink:label="lab_efoi_ExchangeAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exchange Agreement</link:label>
    <link:label id="lab_efoi_ExchangeAgreementMember_label_en-US" xlink:label="lab_efoi_ExchangeAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exchange Agreement [Member]</link:label>
    <link:label id="lab_efoi_ExchangeAgreementMember_documentation_en-US" xlink:label="lab_efoi_ExchangeAgreementMember" 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">Exchange Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ExchangeAgreementMember" xlink:href="efoi-20220930.xsd#efoi_ExchangeAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ExchangeAgreementMember" xlink:to="lab_efoi_ExchangeAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_4b72496f-2913-41e6-9c6a-dfec3c8e7463_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_9e010ff7-97c8-4e2d-b98e-44b55bf8f926_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ProceedsFromLoanOriginations1_a8049c16-255b-46a8-bec5-2e5a599cbbfc_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RelatedPartyTransactionDomain_732e84e6-e130-40ec-bb86-f8939608d864_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction [Domain]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionDomain_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain" xlink:to="lab_us-gaap_RelatedPartyTransactionDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_46c16464-4df9-4ab3-9b76-14286e48ed28_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-20220930.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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_7734c2c1-dd5c-445f-a46b-71724ea411cb_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_GainLossOnForgivenessOfDebt_10cd6b2b-db68-4cbe-a2bc-a016989fd9c5_negatedTerseLabel_en-US" xlink:label="lab_efoi_GainLossOnForgivenessOfDebt" 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 Paycheck Protection Program loan</link:label>
    <link:label id="lab_efoi_GainLossOnForgivenessOfDebt_4ca52518-7331-4570-8f31-f3112f15eed0_negatedLabel_en-US" xlink:label="lab_efoi_GainLossOnForgivenessOfDebt" 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">Gain on forgiveness of Paycheck Protection Program loan</link:label>
    <link:label id="lab_efoi_GainLossOnForgivenessOfDebt_74b40af4-b9f1-47c4-8290-d6614388a28d_terseLabel_en-US" xlink:label="lab_efoi_GainLossOnForgivenessOfDebt" xlink: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_efoi_GainLossOnForgivenessOfDebt_label_en-US" xlink:label="lab_efoi_GainLossOnForgivenessOfDebt" xlink: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 Forgiveness Of Debt</link:label>
    <link:label id="lab_efoi_GainLossOnForgivenessOfDebt_documentation_en-US" xlink:label="lab_efoi_GainLossOnForgivenessOfDebt" 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">Gain (Loss) On Forgiveness Of Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_GainLossOnForgivenessOfDebt" xlink:to="lab_efoi_GainLossOnForgivenessOfDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Liabilities_90c9a5f3-f782-468a-91df-7ad73bbd5344_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_ecf8f264-bb02-4b97-9763-5db8757ba4b2_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5cb98449-08af-4f51-873e-626a43508e7a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_StatementGeographicalAxis_9e0e201e-cb63-4f29-ae99-3f42990c687f_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_NetCashProvidedByUsedInInvestingActivitiesAbstract_91320299-d4e8-4f3e-85cd-9e4ecde6d546_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_RestructuredLeasesOperatingLeasePayments_2a4611e4-f8d7-40e9-9c65-d7e484cf073a_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-20220930.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_StockIssuedDuringPeriodValueNewIssues_b7ce50f7-aed7-4b19-82da-3a8c57f8310f_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</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingLeasedAssetsLineItems_af8291c2-ef40-4c0e-b895-19faab632711_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasedAssetsLineItems" xlink: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 Leased Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_OperatingLeasedAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_OperatingLeasedAssetsLineItems" xlink: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 Leased Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasedAssetsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasedAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems" xlink:to="lab_us-gaap_OperatingLeasedAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_aad3b392-b80a-4775-8c08-69bf925915b6_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/2022/dei-2022.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_efoi_StandardProductWarrantyNumberofYears_54f601b0-663b-4df9-82d6-427f184e0425_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-20220930.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_ff35afc4-85af-4011-9444-b50330276330_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-20220930.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_us-gaap_RevolvingCreditFacilityMember_8bd0640f-7785-4eb0-b2f9-c442a9607942_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PropertyPlantAndEquipmentTextBlock_925fc889-8be5-4266-ab41-37b77e2dba37_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PreferredStockSharesIssued_30d98d89-b6d4-4a4b-95d3-ce24debd9b46_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_DocumentType_c44bd987-b568-4524-bfbd-0215920f9aa1_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/2022/dei-2022.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_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_eb9cbef1-59f1-4e58-b9fb-357b622d41a6_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-20220930.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_c2fb9b41-c261-440a-978b-caf15436bf95_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PropertyPlantAndEquipmentUsefulLife_bd9fef82-7b95-4dd7-ad4b-cb019498162e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ConcentrationRiskBenchmarkDomain_10c5097b-304f-462f-88cc-5885bc1007c6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_EntityWideInformationRevenueFromExternalCustomerLineItems_8b958f4b-893d-40bc-a6d0-d98e0d0d27d9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RestructuringCostAndReserveAxis_400aae04-258e-4051-9e99-74d4fd537e54_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_8854a384-e1b8-418f-8070-3a91bae15239_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 (USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_a9f07c86-1596-4a7b-89dd-1314607b037e_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DebtDisclosureTextBlock_66f591d6-f5a9-4a63-a28a-0fbe53dbb48f_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_ProductsAndServicesDomain_19d0ce90-9a6c-48cc-867d-2258d188fa30_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_efoi_DistributorToTheUSDepartmentOfDefenseMember_0d976b68-0cc4-4c07-9630-572209207017_terseLabel_en-US" xlink:label="lab_efoi_DistributorToTheUSDepartmentOfDefenseMember" xlink: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. Department Of Defense</link:label>
    <link:label id="lab_efoi_DistributorToTheUSDepartmentOfDefenseMember_label_en-US" xlink:label="lab_efoi_DistributorToTheUSDepartmentOfDefenseMember" xlink: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. Department Of Defense [Member]</link:label>
    <link:label id="lab_efoi_DistributorToTheUSDepartmentOfDefenseMember_documentation_en-US" xlink:label="lab_efoi_DistributorToTheUSDepartmentOfDefenseMember" 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. Department Of Defense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheUSDepartmentOfDefenseMember" xlink:href="efoi-20220930.xsd#efoi_DistributorToTheUSDepartmentOfDefenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DistributorToTheUSDepartmentOfDefenseMember" xlink:to="lab_efoi_DistributorToTheUSDepartmentOfDefenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_db60516f-146d-4386-aa1f-a6eaaa177428_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/2022/dei-2022.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_IncreaseDecreaseInAccruedLiabilities_35485d99-ba7e-4958-88fd-72953ae044ae_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncreaseDecreaseInDeferredRevenue_cae54d23-b395-4ee5-9259-d97263e8c8cd_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ConcentrationRiskTable_7a62df23-dc6b-45ce-bd0a-3bc153afa2bc_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_InventoryFacilityMember_9475bad0-ddd0-4f38-87bc-c998ed5098a1_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-20220930.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_6c170c26-556e-4326-8986-9b926f27bc42_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 (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-20220930.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_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements_a472cc91-2e37-4cfd-a1c8-e3971368bdb6_terseLabel_en-US" xlink:label="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" xlink: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, net of changes in inventory reserves for replacements</link:label>
    <link:label id="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements_label_en-US" xlink:label="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" xlink: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 Warranties Reserve For Replacements</link:label>
    <link:label id="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements_documentation_en-US" xlink:label="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" 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 Accrual, Increase (Decrease) For Warranties Reserve For Replacements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" xlink:href="efoi-20220930.xsd#efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" xlink:to="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromWarrantExercises_81101e5d-8564-4114-82ed-3a5418f761e0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_VehiclesMember_43900107-95c4-42df-9a91-71403ad7b23c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SubsequentEventMember_ed46bb8a-15b6-4dd0-83ec-bd3d39dbacb6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SalesRevenueNetMember_e012ccd6-f954-4d22-aa2b-6c13dc5ab27d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_DocumentPeriodEndDate_88bba696-d1cb-462d-aa32-2e04d0016879_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/2022/dei-2022.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_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_2328eb74-8d28-4654-b145-500fe4f1f6ce_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" 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">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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ConvertiblePreferredStockMember_b4d17b4c-a576-485b-9c5a-5685b64a4e79_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_40272ef1-bc20-4890-a47c-394c562a95a0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_Assets_4a9198c8-ed69-4a4b-ba7f-1391a23b007b_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_DebtDisclosureAbstract_1191a9ee-05d2-447b-861d-0c26be02139e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_EarningsPerShareAbstract_a642f301-0c40-4117-bf72-a4316bd5bc74_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_b60dcd0a-5166-4c03-9c09-33d3a0f644ad_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncomeStatementLocationAxis_b84d6377-c505-4239-8311-e30a7604e8e4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfRestructuringAndRelatedCostsTable_119be38b-1bb3-44b2-b40d-73117123862d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_2bad3af6-ccf0-4ca5-aa65-0f5ba2a66a80_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercised (USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink: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, Exercises in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_8d2dd38c-5741-409c-8801-dd41900808d9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AccountingPoliciesAbstract_15e5dbc3-493e-4489-931a-471a90625e09_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_74e03b04-f572-4b46-a2ae-305d7e0f822b_terseLabel_en-US" xlink:label="lab_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" xlink: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 exercise of stock options and employee stock purchase plan purchases</link:label>
    <link:label id="lab_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_label_en-US" xlink:label="lab_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" xlink: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 Stock Options Exercised And Employee Stock Purchase Plans</link:label>
    <link:label id="lab_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_documentation_en-US" xlink:label="lab_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" 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 Stock Options Exercised And Employee Stock Purchase Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" xlink:to="lab_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_6ad2e6d6-3758-491d-a154-1a36c1e14fb0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_720306e6-8c58-4c87-bcf8-62b2aa087eee_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_MajorCustomersAxis_09fd1724-7203-4e0c-b4af-200673e143fd_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy_697f5f2f-6ac4-4a6d-a859-09e8d2dd253e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9fb6ca96-0620-48b5-8d81-2de0678560fd_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_AccruedSalesCommissionCurrent_a12fca38-fcc5-4c19-a2ed-83908b287efb_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RelatedPartyTransactionLineItems_8b6231be-2a9c-43be-8d45-af4b1ae472d4_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction [Line Items]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionLineItems_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems" xlink:to="lab_us-gaap_RelatedPartyTransactionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_52f2b236-5b28-4477-a033-ccd494d04c9a_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">October 2023 to September 2024</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_6b9b1e3c-ef1c-477c-9c02-8e29e854f1b6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_31db3f3c-9b0d-4813-bd57-1e9f2639c4be_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink: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 called by warrants (in shares)</link:label>
    <link:label id="lab_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_label_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink: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, Number of Securities Called by Warrants or Rights</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink:to="lab_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_4aa42ac5-2b42-4695-a050-11321f9a3406_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_f4298f0c-39e6-4644-8cd5-841333b27cb6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_InventoryFinishedGoods_dca9a592-69ac-4272-a683-dcf2d606cad5_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoods" xlink: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_InventoryFinishedGoods_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoods" xlink: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, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoods" xlink:to="lab_us-gaap_InventoryFinishedGoods" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_96ebae32-35d4-483b-b399-9df313c5b847_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 (loss) 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityRegistrantName_f4e070cc-397a-4113-8bb8-efd910eace16_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/2022/dei-2022.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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_c6acb3ae-a6e4-4591-8356-a3df84d4ac64_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StockIssuedDuringPeriodSharesNewIssues_e105885e-6b20-46e8-a32b-5b1471fb2530_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">Issuance of common 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SubsequentEventsTextBlock_568437c5-761c-4037-b78e-63f5bcf1e426_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SupplierConcentrationRiskMember_1fd7f8ee-3d85-448f-bded-17111ed8d62d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_50fa8354-d4d1-4e8e-a3d2-7ceb734257ae_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RestructuringReserveRollForward_ef433289-da74-4ff9-b63d-363d1cf6401a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityAddressCityOrTown_df4992bf-a9c5-40a4-8e54-893f56eec9aa_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/2022/dei-2022.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_efoi_InstitutionalInvestorMember_e948094e-f63a-46f0-be14-99ead0c89543_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_6833c2b3-6ac2-4871-891b-e333b72dc19a_verboseLabel_en-US" xlink:label="lab_efoi_InstitutionalInvestorMember" 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">Institutional investors</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-20220930.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_LeasesAbstract_625eec91-f314-4f4d-89eb-0d85ae646e08_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingExpensesAbstract_a581bf48-88f6-454b-887a-18bc042bc33a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ImpairmentEffectsOnEarningsPerShareTable_05b70746-7a0f-40b2-bb7e-ed4b879a0eba_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DeferredTaxAssetsOperatingLossCarryforwards_84e9825a-70f2-41bb-9ed6-5842a729349a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_MinimumMember_c5c4893b-619f-4fc4-9dbe-cdc65fd8d98d_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_StatementOfFinancialPositionAbstract_31efb539-9b3d-4b70-bd02-fd9948cf91eb_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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:label id="lab_dei_EntityEmergingGrowthCompany_6ffb5b98-fc51-4614-b705-2e2d2e844d9b_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/2022/dei-2022.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_CommonStockParOrStatedValuePerShare_eb513b2a-6ecc-40d5-89f7-5ad776678442_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 (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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_InventoryWriteDown_746e2771-2ae9-49a8-90b8-2c314b6f02fe_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_4f16c0a6-f2c8-4c0e-a524-5240b3d09ca9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_InventoryValuationReservesSalesOfInventory_4915ee76-c073-4b61-87f8-7a716f1f663c_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-20220930.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_OperatingLossCarryforwards_d343a52e-5e13-4c12-a1f2-a02bf84c6086_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_TradingSymbol_25c2ae20-e346-4d2b-9f7c-5410775444d1_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/2022/dei-2022.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_dei_EntityFileNumber_8f2b7fb5-3708-47a6-9772-4b84c5376589_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/2022/dei-2022.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_RealEstateMember_810c19a1-a91e-4a4f-98e1-d087d17f4b3b_terseLabel_en-US" xlink:label="lab_us-gaap_RealEstateMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Real Estate</link:label>
    <link:label id="lab_us-gaap_RealEstateMember_label_en-US" xlink:label="lab_us-gaap_RealEstateMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Real Estate [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RealEstateMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RealEstateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RealEstateMember" xlink:to="lab_us-gaap_RealEstateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract_0b24cd9f-62d3-4935-9503-10f1f7fbc41c_terseLabel_en-US" xlink:label="lab_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract" xlink: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_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract_label_en-US" xlink:label="lab_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract" xlink: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, Assets And Liabilities, Lessee [Abstract]</link:label>
    <link:label id="lab_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract_documentation_en-US" xlink:label="lab_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract" 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, Assets And Liabilities, Lessee</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract" xlink:href="efoi-20220930.xsd#efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract" xlink:to="lab_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OperatingLeaseCostNetOfSubleaseIncome_b25a0df5-32bb-416b-a843-847598a816a9_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-20220930.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_CommercialBuildingSystemsProviderMember_5eaeda58-9125-4094-ab12-a6f209edac0e_terseLabel_en-US" xlink:label="lab_efoi_CommercialBuildingSystemsProviderMember" xlink: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 Building Systems Provider</link:label>
    <link:label id="lab_efoi_CommercialBuildingSystemsProviderMember_label_en-US" xlink:label="lab_efoi_CommercialBuildingSystemsProviderMember" xlink: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 Building Systems Provider [Member]</link:label>
    <link:label id="lab_efoi_CommercialBuildingSystemsProviderMember_documentation_en-US" xlink:label="lab_efoi_CommercialBuildingSystemsProviderMember" 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 Building Systems Provider</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialBuildingSystemsProviderMember" xlink:href="efoi-20220930.xsd#efoi_CommercialBuildingSystemsProviderMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_CommercialBuildingSystemsProviderMember" xlink:to="lab_efoi_CommercialBuildingSystemsProviderMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_e1175697-d182-4c70-8966-9293a1137a39_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_CommercialProductsMember_9562dc46-c51b-4c70-b4f3-a7749ce067ed_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-20220930.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_6d5758ed-3d7b-4513-ae15-63aee4810358_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-20220930.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_us-gaap_EquipmentMember_8633f9b6-fc48-4416-a2cf-9a383cecdc6f_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_e78ebadc-fe62-4152-8459-4a832d92e33e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RestrictedStockUnitsRSUMember_13e01e9d-6288-47dd-8f23-cf99c126b6b2_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_bc88c687-1f37-444c-95ac-59316a548bb9_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_571359b4-0e73-49b7-b6da-adc732ba4cf4_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_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ConcentrationRiskByBenchmarkAxis_55a68781-e9b7-46b4-b6e7-877584e8cb16_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_2c09929c-c425-4c9b-b9f1-07f09646a8d4_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, to be Paid, Rolling Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_1867974c-5c98-438b-b3d8-30e5c1bacd80_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_UseOfEstimates_eb9ded40-eaa1-4160-8e2b-a34cf5351c47_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_PreFundedWarrantsMember_fbd7b21f-7168-4c1b-ade9-78b452baf01b_terseLabel_en-US" xlink:label="lab_efoi_PreFundedWarrantsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pre-Funded Warrants</link:label>
    <link:label id="lab_efoi_PreFundedWarrantsMember_label_en-US" xlink:label="lab_efoi_PreFundedWarrantsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pre-Funded Warrants [Member]</link:label>
    <link:label id="lab_efoi_PreFundedWarrantsMember_documentation_en-US" xlink:label="lab_efoi_PreFundedWarrantsMember" 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">Pre-Funded Warrants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PreFundedWarrantsMember" xlink:href="efoi-20220930.xsd#efoi_PreFundedWarrantsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PreFundedWarrantsMember" xlink:to="lab_efoi_PreFundedWarrantsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryRawMaterials_fb184c8c-364f-4a91-a8c1-df4db8c997d1_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterials" xlink: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_InventoryRawMaterials_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterials" xlink: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, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterials" xlink:to="lab_us-gaap_InventoryRawMaterials" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockOptionMember_405be7d9-6690-4ac7-9de5-e39d8ef220a0_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">Options</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_IncreaseDecreaseInAccountsPayable_584e1a1e-7204-4aff-9a33-422442215145_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LondonInterbankOfferedRateLIBORMember_05592f47-1c27-4403-9e03-b36c1de366ea_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ConcentrationRiskPercentage1_9d82467a-5346-43fd-b076-cd0970f361b1_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 (less than for geographic concentration risk for the three months ended June 30, 2022)</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_Revenues_c6924f82-4041-487b-bd2c-3100bd3c226f_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_5a8675d1-7cae-47ae-bee4-5450375a589b_terseLabel_en-US" xlink:label="lab_efoi_EarningsPerShareBasicAndDilutedEPSAbstract" xlink: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_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_9f34bf74-66f8-443a-8e32-26e0498dd247_verboseLabel_en-US" xlink:label="lab_efoi_EarningsPerShareBasicAndDilutedEPSAbstract" 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_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_label_en-US" xlink:label="lab_efoi_EarningsPerShareBasicAndDilutedEPSAbstract" xlink: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 EPS [Abstract]</link:label>
    <link:label id="lab_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_documentation_en-US" xlink:label="lab_efoi_EarningsPerShareBasicAndDilutedEPSAbstract" 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">Earnings Per Share, Basic and Diluted EPS</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract" xlink:href="efoi-20220930.xsd#efoi_EarningsPerShareBasicAndDilutedEPSAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract" xlink:to="lab_efoi_EarningsPerShareBasicAndDilutedEPSAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_8d1676f4-7035-4dd7-b66b-bb136d1951fe_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_19f0ed94-8977-40fd-9d76-dad2b59e9aa4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_IncomeTaxDisclosureTextBlock_e4c697fe-2a0e-40f9-b87e-b2b24146bfa8_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_995bd784-1d4d-46e0-b9ea-99d47797d39a_terseLabel_en-US" xlink:label="lab_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent" xlink: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</link:label>
    <link:label id="lab_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Due to Related Parties</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DueToRelatedPartiesCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent" xlink:to="lab_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OctoberPartitionedNoteMember_5f2e6357-e8f1-4191-9584-1a056e37877a_terseLabel_en-US" xlink:label="lab_efoi_OctoberPartitionedNoteMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">October Partitioned Note</link:label>
    <link:label id="lab_efoi_OctoberPartitionedNoteMember_label_en-US" xlink:label="lab_efoi_OctoberPartitionedNoteMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">October Partitioned Note [Member]</link:label>
    <link:label id="lab_efoi_OctoberPartitionedNoteMember_documentation_en-US" xlink:label="lab_efoi_OctoberPartitionedNoteMember" 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">October Partitioned Note [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OctoberPartitionedNoteMember" xlink:href="efoi-20220930.xsd#efoi_OctoberPartitionedNoteMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OctoberPartitionedNoteMember" xlink:to="lab_efoi_OctoberPartitionedNoteMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LineOfCreditFacilityMonthlyFacilityFee_842c6c2f-228e-4075-b701-04c8d58a0cd6_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-20220930.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_CreditFacilityDomain_3d9dc857-22f9-43ba-9c0b-1d33570623d7_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_January2020EquityOfferingPrivatePlacementMember_e7026a06-733b-43ba-af1e-486fb18f0867_terseLabel_en-US" xlink:label="lab_efoi_January2020EquityOfferingPrivatePlacementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">January 2020 Equity Offering, Private Placement</link:label>
    <link:label id="lab_efoi_January2020EquityOfferingPrivatePlacementMember_label_en-US" xlink:label="lab_efoi_January2020EquityOfferingPrivatePlacementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">January 2020 Equity Offering, Private Placement [Member]</link:label>
    <link:label id="lab_efoi_January2020EquityOfferingPrivatePlacementMember_documentation_en-US" xlink:label="lab_efoi_January2020EquityOfferingPrivatePlacementMember" 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">January 2020 Equity Offering, Private Placement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingPrivatePlacementMember" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingPrivatePlacementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_January2020EquityOfferingPrivatePlacementMember" xlink:to="lab_efoi_January2020EquityOfferingPrivatePlacementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_4232540b-c595-46d8-9134-78eb3d01dd92_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AccountsPayableMember_a48204fa-e21f-4df6-b9ca-0c587ceb9de3_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_January2020InstitutionalInvestorMember_b5e40441-3a77-473c-a583-006113757b15_terseLabel_en-US" xlink:label="lab_efoi_January2020InstitutionalInvestorMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">January 2020 Institutional Investor</link:label>
    <link:label id="lab_efoi_January2020InstitutionalInvestorMember_label_en-US" xlink:label="lab_efoi_January2020InstitutionalInvestorMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">January 2020 Institutional Investor [Member]</link:label>
    <link:label id="lab_efoi_January2020InstitutionalInvestorMember_documentation_en-US" xlink:label="lab_efoi_January2020InstitutionalInvestorMember" 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">January 2020 Institutional Investor</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020InstitutionalInvestorMember" xlink:href="efoi-20220930.xsd#efoi_January2020InstitutionalInvestorMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_January2020InstitutionalInvestorMember" xlink:to="lab_efoi_January2020InstitutionalInvestorMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_WallStreetJournalHighestPrimeRateMember_c314c357-db2b-4d31-a713-b47efb4f1c36_terseLabel_en-US" xlink:label="lab_efoi_WallStreetJournalHighestPrimeRateMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wall Street Journal, Highest Prime Rate</link:label>
    <link:label id="lab_efoi_WallStreetJournalHighestPrimeRateMember_label_en-US" xlink:label="lab_efoi_WallStreetJournalHighestPrimeRateMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Wall Street Journal, Highest Prime Rate [Member]</link:label>
    <link:label id="lab_efoi_WallStreetJournalHighestPrimeRateMember_documentation_en-US" xlink:label="lab_efoi_WallStreetJournalHighestPrimeRateMember" 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">Wall Street Journal, Highest Prime Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_WallStreetJournalHighestPrimeRateMember" xlink:href="efoi-20220930.xsd#efoi_WallStreetJournalHighestPrimeRateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_WallStreetJournalHighestPrimeRateMember" xlink:to="lab_efoi_WallStreetJournalHighestPrimeRateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_a43f6d1a-a1a3-43d7-9e24-ddfa853afadd_terseLabel_en-US" xlink:label="lab_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract" xlink: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_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_label_en-US" xlink:label="lab_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract" xlink: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, Assets And Liabilities, Lessee [Abstract]</link:label>
    <link:label id="lab_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_documentation_en-US" xlink:label="lab_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract" 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, Assets And Liabilities, Lessee</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract" xlink:href="efoi-20220930.xsd#efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract" xlink:to="lab_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_39f13437-f416-4b8d-b428-95108b65c2bd_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_RepurchaseAgreementCounterpartyNameDomain_348c44de-8bd8-41c1-a551-8fa3d469ff16_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_StockholdersEquity_d15921cb-d0a7-4e6a-a742-090ae713e9e6_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_7c2d6487-75c0-4a8b-bf4c-e03756082750_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">Beginning balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_347916a4-a573-4cf7-83c0-0192b8c4b681_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">Ending balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_afb913f5-9271-442c-801f-77cf45e92e9d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_DirectorMember_f2a3bcf4-d152-4cf8-ac6a-a7ef23e1e866_terseLabel_en-US" xlink:label="lab_srt_DirectorMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Director</link:label>
    <link:label id="lab_srt_DirectorMember_label_en-US" xlink:label="lab_srt_DirectorMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Director [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_DirectorMember" xlink:to="lab_srt_DirectorMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_f6abe468-3220-438f-a02a-d5c41d133816_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityInteractiveDataCurrent_07e1fd5e-1d79-42bc-a61c-1c529f4fc3b3_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/2022/dei-2022.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_SaleOfStockNumberOfSharesIssuedInTransaction_43f2847e-7dc3-452c-bc53-5a0f9ad87dfd_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfPropertyPlantAndEquipmentTable_f895e26f-6e00-469c-8f51-0fb262fa4494_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareholdersEquityAndShareBasedPaymentsTextBlock_cf77ac90-b7a9-4d55-82ad-2c8a7bc7c690_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">Stockholders' 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StandardProductWarrantyAccrualCurrent_0f5e3ce1-2e98-4b78-95b7-efc0d126b2bf_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncreaseDecreaseInOperatingCapitalAbstract_2c9792c5-86c4-4407-b3be-091c500e2177_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RetainedEarningsMember_69c867fe-ce14-4800-af29-b5280c88b2fe_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_June2022PrivatePlacementMember_8ab40db4-7f2f-4c5f-aabf-b511c9cf2d89_terseLabel_en-US" xlink:label="lab_efoi_June2022PrivatePlacementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">June 2022 Private Placement</link:label>
    <link:label id="lab_efoi_June2022PrivatePlacementMember_label_en-US" xlink:label="lab_efoi_June2022PrivatePlacementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">June 2022 Private Placement [Member]</link:label>
    <link:label id="lab_efoi_June2022PrivatePlacementMember_documentation_en-US" xlink:label="lab_efoi_June2022PrivatePlacementMember" 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">June 2022 Private Placement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_June2022PrivatePlacementMember" xlink:href="efoi-20220930.xsd#efoi_June2022PrivatePlacementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_June2022PrivatePlacementMember" xlink:to="lab_efoi_June2022PrivatePlacementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_f4c5fe02-6c5a-42fa-b03d-1e2b429e92df_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_CommonStockMember_ca4e167d-99a0-47f4-b430-f0705f6f2258_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_3bf1cb35-1823-484b-b5cd-7b1035d6ceb5_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_PartitionedNoteMember_df0098c9-60ad-4440-b8de-bc74e954d383_terseLabel_en-US" xlink:label="lab_efoi_PartitionedNoteMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Partitioned Note</link:label>
    <link:label id="lab_efoi_PartitionedNoteMember_label_en-US" xlink:label="lab_efoi_PartitionedNoteMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Partitioned Note [Member]</link:label>
    <link:label id="lab_efoi_PartitionedNoteMember_documentation_en-US" xlink:label="lab_efoi_PartitionedNoteMember" 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">Partitioned Note</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PartitionedNoteMember" xlink:href="efoi-20220930.xsd#efoi_PartitionedNoteMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PartitionedNoteMember" xlink:to="lab_efoi_PartitionedNoteMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_e22f9102-a2db-4fbe-bf32-ddeab1efe955_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StatementClassOfStockAxis_ad3c7d03-4bd4-4503-b227-7e4b131e775c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_RevenueRecognitionPolicyTextBlock_e65c413b-0cac-4599-82eb-3a482c4703af_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_OperatingLossCarryforwardsLineItems_c51748ce-3cfa-4ce3-a906-a0d51103d2e9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StatementTable_bf9fdea6-9b88-4351-a899-c0c843cf82fd_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_d50cd1f1-e4b7-4ce5-9bbe-da3cfcbe96d7_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">Vested (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_DocumentQuarterlyReport_67f84823-e93d-4fd1-83f2-89278fc8ae8c_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/2022/dei-2022.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_FurnitureAndFixturesMember_57aac9e0-bb3f-446b-84af-e07d7b0e4a77_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_AssetsCurrentAbstract_8042de3d-f6a1-49ea-ad87-8ead3964d7f9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingLeaseLiabilityNoncurrent_bb0f5408-536e-4185-b352-a6172546c1ad_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_RangeAxis_591337dd-d6cb-4734-b717-e3de6c0bb258_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_RelatedPartyTransactionAxis_4c5eb22f-7a9d-4d0d-9622-2202193e3bc6_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction [Axis]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionAxis_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis" xlink:to="lab_us-gaap_RelatedPartyTransactionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseholdImprovementsMember_7e718cda-f464-4d9c-a23d-5f2af7538e25_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RetainedEarningsAccumulatedDeficit_d9224ccc-1479-4204-a6af-c6281b039a6c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ConvertiblePreferredStockSharesIssuedUponConversion_4e78382e-2228-458e-9c75-e1d54a87950d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_ClassOfWarrantOrRightWarrantsIssued_fb98b188-d396-4e41-8423-6060b84c7d0c_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_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-20220930.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_482eb791-2e29-427e-9a42-59ddd8621c5f_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-20220930.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_efoi_A2021StreetervilleNoteMember_a8aa2379-e4bc-45ae-bb00-da303836618f_terseLabel_en-US" xlink:label="lab_efoi_A2021StreetervilleNoteMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2021 Streeterville Note</link:label>
    <link:label id="lab_efoi_A2021StreetervilleNoteMember_label_en-US" xlink:label="lab_efoi_A2021StreetervilleNoteMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2021 Streeterville Note [Member]</link:label>
    <link:label id="lab_efoi_A2021StreetervilleNoteMember_documentation_en-US" xlink:label="lab_efoi_A2021StreetervilleNoteMember" 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">2021 Streeterville Note</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2021StreetervilleNoteMember" xlink:href="efoi-20220930.xsd#efoi_A2021StreetervilleNoteMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_A2021StreetervilleNoteMember" xlink:to="lab_efoi_A2021StreetervilleNoteMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_42f7b909-91c8-4a4e-a4e8-9ccf73092c61_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 $11 and $14, 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StatementEquityComponentsAxis_532967c5-971a-4be6-beaf-b70df4c6f626_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_ScenarioUnspecifiedDomain_f52596e8-4ffb-49e5-af1a-9d89207f51a6_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_1704eb76-e3d1-4de6-847d-a36e817d32c1_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RelatedPartyTransactionsDisclosureTextBlock_cf63c713-1e69-4250-8b41-a77353e1e95a_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transactions Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_0719f239-5098-4250-80a9-c4a089ef2e36_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/2022/dei-2022.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_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_d4e80782-0a32-4122-9215-f209001deace_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StatementLineItems_f6d89d9d-b9ec-4f34-b5d7-c4fb8eb067ab_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_FinanceLeasePrincipalPayments_c0279441-ce8f-4995-a4a8-f0f6dd31e05b_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_9e43e096-72dc-4c61-ba80-82869600cec5_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_138e7373-19b6-40ad-9071-6a7b9b1409af_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">October 2024 to September 2025</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OffshoreSupplierOneMember_234cfd31-f56b-4b9e-97fb-b4ba5afb0f70_terseLabel_en-US" xlink:label="lab_efoi_OffshoreSupplierOneMember" xlink: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 One</link:label>
    <link:label id="lab_efoi_OffshoreSupplierOneMember_label_en-US" xlink:label="lab_efoi_OffshoreSupplierOneMember" xlink: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 One [Member]</link:label>
    <link:label id="lab_efoi_OffshoreSupplierOneMember_documentation_en-US" xlink:label="lab_efoi_OffshoreSupplierOneMember" 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 One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OffshoreSupplierOneMember" xlink:href="efoi-20220930.xsd#efoi_OffshoreSupplierOneMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OffshoreSupplierOneMember" xlink:to="lab_efoi_OffshoreSupplierOneMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateDomain_06857757-1bdb-44aa-809e-ae7f872fc40f_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SellingGeneralAndAdministrativeExpense_4f89103d-1b35-475b-ba6c-dd51d3cffa35_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements_49524ae8-4ae8-448b-a518-748bc1df2d46_verboseLabel_en-US" xlink:label="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" 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">In kind settlements made during the period</link:label>
    <link:label id="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements_label_en-US" xlink:label="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" xlink: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 (Payments) Recovery Of Settlements</link:label>
    <link:label id="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements_documentation_en-US" xlink:label="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" 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 Accrual, Increase (Decrease) For (Payments) Recovery Of Settlements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" xlink:href="efoi-20220930.xsd#efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" xlink:to="lab_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetGross_a6dddc56-5825-4246-b1ee-da5731d44c25_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-20220930.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_OperatingLeaseRightOfUseAsset_98c059c6-5ffe-4a91-8441-8181cd9add5c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AccumulatedOtherComprehensiveIncomeMember_5b56d9ca-036a-4afe-9b9e-c2799e2b752b_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_a513fe3e-0a1b-4a82-a759-77f16e06bfe6_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_TypeOfRestructuringDomain_6783b9e0-2e11-47d4-8e0e-d8be908174e0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_DocumentTransitionReport_1123cfae-1309-4d7f-9e41-d92e5c89df0f_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/2022/dei-2022.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_dei_LocalPhoneNumber_09d5e232-2e0c-4333-a33a-6a8da5b60cf5_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/2022/dei-2022.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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_d694b5ec-fab2-425a-a231-c2bfb59ea1e3_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingIncomeLoss_49cc7fc3-b28f-4fa9-8504-fda5496ab548_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncreaseDecreaseInInventories_b7d39664-f693-4cc0-921f-831b143db26e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_NewAccountingPronouncementsPolicyPolicyTextBlock_903644e0-9ac0-4f57-8392-cf68edbd9845_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncreaseDecreaseInDepositOtherAssets_e951621e-5cbb-459f-b4cd-7d2de9237d16_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_f77c6572-1bce-4bfd-a310-d219894a5ae7_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent_fd1f960f-7343-44f7-9a21-19f95d73d072_terseLabel_en-US" xlink:label="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ERTC expected receivable</link:label>
    <link:label id="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent_label_en-US" xlink:label="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payroll Tax Credit, Employee Retention Credit Under The CARES Act, Current</link:label>
    <link:label id="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent_documentation_en-US" xlink:label="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" 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">Payroll Tax Credit, Employee Retention Credit Under The CARES Act, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" xlink:href="efoi-20220930.xsd#efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" xlink:to="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_3288b638-454f-403a-b179-b2efcc76ea47_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_CommonStockSharesOutstanding_8d7f7bf7-47d6-4a40-aefc-38bb533df535_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_cdd34a1d-8054-4287-bf6d-7cc9f3537ce3_periodStartLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" 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 (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_f8b106da-ff8a-4051-884b-1212fafa5199_periodEndLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" 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 (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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PropertyPlantAndEquipmentByTypeAxis_8f578217-d2ad-41cf-be0d-e38ff73bfb0d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_EstimatedProceedsFromIssuanceOfWarrants_716540c7-c380-493b-b540-04592d3ce333_terseLabel_en-US" xlink:label="lab_efoi_EstimatedProceedsFromIssuanceOfWarrants" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated proceeds from issuance of warrants</link:label>
    <link:label id="lab_efoi_EstimatedProceedsFromIssuanceOfWarrants_label_en-US" xlink:label="lab_efoi_EstimatedProceedsFromIssuanceOfWarrants" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Estimated Proceeds From Issuance Of Warrants</link:label>
    <link:label id="lab_efoi_EstimatedProceedsFromIssuanceOfWarrants_documentation_en-US" xlink:label="lab_efoi_EstimatedProceedsFromIssuanceOfWarrants" 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">Estimated Proceeds From Issuance Of Warrants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants" xlink:href="efoi-20220930.xsd#efoi_EstimatedProceedsFromIssuanceOfWarrants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants" xlink:to="lab_efoi_EstimatedProceedsFromIssuanceOfWarrants" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_27fc42fa-8ab9-41d3-a8b4-f160b4c160d1_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 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_SegmentGeographicalDomain_44d7e34b-4f19-4dcd-bd9e-48bbe4c099f7_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_ScheduleOfProductWarrantyLiabilityTableTextBlock_51c0fab8-8253-4c57-846f-0457925b8985_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PreferredStockParOrStatedValuePerShare_5859878d-4076-4d5c-b27b-d3669bcdc8c4_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 (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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_IncomeStatementAbstract_be3261d4-bad3-4fe5-b2f5-e6f3d1346db6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_4b107166-0953-442f-b17c-ef6d3522a965_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AdditionalPaidInCapitalMember_1479d930-0661-44ed-b0f5-7041dd3ffd25_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_DocumentFiscalPeriodFocus_91aafb95-02c4-4602-afeb-a4e081c9392a_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/2022/dei-2022.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_us-gaap_LineOfCreditFacilityExpirationPeriod_ad09bf4b-e6ab-4fca-acc3-aeb6d30c4ea4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_CostOfGoodsAndServicesSold_8f879b0f-0d6c-435b-9679-93c80095ce88_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_WeightedAverageNumberOfDilutedSharesOutstanding_50c3f503-cded-4eb7-aa18-82d7483316d3_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted weighted average common shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_dd8a3db9-519a-42f3-bbde-4ef8af748391_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_69afbcfc-4555-4492-82d7-dc54d398f234_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 of options (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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_PromissoryNoteDomain_6ac06b84-cee9-4bf2-a3fb-a3027357c5fe_terseLabel_en-US" xlink:label="lab_efoi_PromissoryNoteDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Promissory Note [Domain]</link:label>
    <link:label id="lab_efoi_PromissoryNoteDomain_label_en-US" xlink:label="lab_efoi_PromissoryNoteDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Promissory Note [Domain]</link:label>
    <link:label id="lab_efoi_PromissoryNoteDomain_documentation_en-US" xlink:label="lab_efoi_PromissoryNoteDomain" 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">Promissory Note</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PromissoryNoteDomain" xlink:href="efoi-20220930.xsd#efoi_PromissoryNoteDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PromissoryNoteDomain" xlink:to="lab_efoi_PromissoryNoteDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember_56c73959-5106-4d12-8bfc-3d8dcd1f2540_terseLabel_en-US" xlink:label="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Collaborative Arrangement and Arrangement Other than Collaborative [Domain]</link:label>
    <link:label id="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember_label_en-US" xlink:label="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Collaborative Arrangement and Arrangement Other than Collaborative [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:to="lab_us-gaap_ArrangementsAndNonarrangementTransactionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NotesPayableCurrent_3c64965f-9050-4cfd-87a1-944d5e9408c3_terseLabel_en-US" xlink:label="lab_us-gaap_NotesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notes payable, net of discounts and loan origination fees</link:label>
    <link:label id="lab_us-gaap_NotesPayableCurrent_label_en-US" xlink:label="lab_us-gaap_NotesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notes Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NotesPayableCurrent" xlink:to="lab_us-gaap_NotesPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentPrepaymentPremiumPercent_2ba43f87-6b7a-48ec-934b-3e80d7c09f25_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-20220930.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_AccountsReceivableMember_145c0aab-5438-4513-ab7f-1057129bbce9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DeferredFinanceCostsGross_060e726c-9351-4738-8891-be0c8ee575a8_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_720b498f-df26-4680-9c5f-75313e38f39e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_CommonStockValue_44e08238-2349-4f32-8067-f93fb90e1d05_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: Authorized: 50,000,000 shares at September 30, 2022 and December 31, 2021, Issued and outstanding: 9,191,108 at September 30, 2022 and 6,368,549 at December 31, 2021</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_DebtInstrumentNameDomain_11244c5f-0df1-481c-9420-f3ed48000818_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_FusionParkLLCMember_4947a575-5d76-4a1f-8115-b0ec64f08358_terseLabel_en-US" xlink:label="lab_efoi_FusionParkLLCMember" xlink: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_FusionParkLLCMember_label_en-US" xlink:label="lab_efoi_FusionParkLLCMember" xlink: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 LLC [Member]</link:label>
    <link:label id="lab_efoi_FusionParkLLCMember_documentation_en-US" xlink:label="lab_efoi_FusionParkLLCMember" 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 LLC</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FusionParkLLCMember" xlink:href="efoi-20220930.xsd#efoi_FusionParkLLCMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_FusionParkLLCMember" xlink:to="lab_efoi_FusionParkLLCMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockMember_cf6973f3-498f-4f96-9bed-123efcddcee2_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_61449911-5f1f-4332-8c53-41833e5fd601_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DebtInstrumentConvertibleConversionPrice1_1cf151c2-cf24-49e6-b176-7f379de9d988_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ConvertibleDebtMember_6d395286-53f0-443f-891f-aa938ff99921_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PreferredStockSharesAuthorized_10ea10bb-cd78-4f0c-9a76-f290af380f8b_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OtherNonoperatingExpense_9d4c601d-eca8-4700-8bb6-7d41239255ac_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingExpense" xlink: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</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingExpense" xlink: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 Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingExpense" xlink:to="lab_us-gaap_OtherNonoperatingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_00cf8ae9-b926-47eb-944e-d0030312700d_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-20220930.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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_85cab7fe-819c-40ba-b5e4-9b543bbe67b4_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, beginning of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_a5a53dd2-cfca-4cf7-9845-b36e0354371c_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, end of period</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_RestructuredLeaseSubleaseIncome_edeea914-3fb9-48ba-bb42-38f8dd425a96_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-20220930.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_CommitmentsAndContingenciesDisclosureTextBlock_b24c7e87-ea11-498d-9a62-6aeafbfaf67c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_8a81b91b-1e7c-4223-953d-42d32fe93f28_verboseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued" 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 upon the exercise of warrants</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LiabilitiesCurrentAbstract_5a863583-7abb-499c-84ea-dd01f2e46054_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_CommonStockSharesIssued_bf4f94e7-a110-4d39-8df1-14466c0318c0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_37048e2b-68ce-4e81-a640-fe386022d18b_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ConcentrationRiskLineItems_30e194fa-3854-48b2-bf4e-430b0c6ec9c6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ContractWithCustomerLiabilityCurrent_052c283f-5660-409c-8fa5-2a744df0fa39_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncomeStatementLocationDomain_6c5e309c-f8fd-4e93-87ac-ebcb27db2fd8_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_FinanceLeaseLiabilityCurrent_bb584406-9326-4aee-a013-a72208dcf471_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_FacilityClosingMember_b966b6e9-5466-4a58-950e-cde757c08c7e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_AmendmentFlag_c741234c-1ac0-4261-aa5e-f0fcdf203d4e_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/2022/dei-2022.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_NetCashProvidedByUsedInInvestingActivities_3ad7cf49-d68e-4a8a-a2c6-11cf14f994e9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingLeaseCost_6c1043c2-ffe9-4f02-8060-035830a343e5_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_DebtInstrumentFaceAmount_86aaa5cf-2d0e-4cb1-a023-fda4904dd6d4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_df9333be-13d8-4757-910a-7174472d0ff2_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ConstructionInProgressMember_b10cd8d5-1fce-4ecb-991b-85a8db28bc84_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityCurrentReportingStatus_771ff929-7e56-4f93-9818-3fed9254c983_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/2022/dei-2022.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_PaymentsForRestructuring_74b3bb2d-a025-4961-b01b-a00d423d98f5_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_893b1bc4-147e-4691-8c68-cc8178beb6ef_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_3123b008-6651-4387-94d8-54cff019195f_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RepaymentsOfNotesPayable_1422d4df-1016-489d-b4b8-1cca4ff14030_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 2021 Streeterville 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_IncreaseDecreaseInProvisionForWarranties_7ee27f8f-be93-4075-885b-29e8abcbe255_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-20220930.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_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_92ffb276-f6ac-4d5f-8ddd-1b678d4958eb_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-20220930.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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_d5a7616f-87d4-4bdc-8c57-bbb6d65bd466_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_CounterpartyNameAxis_47b3e031-1712-4344-89c3-880e86000c93_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e3d41dfe-0dc9-4675-bd91-60ae5f6f1066_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_b7d0c968-3a86-457e-b8e2-07a8411365c4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_8affe807-b7d8-48f3-a8d7-6f0ad48e6fc4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_HuangNoteMember_9a6df673-af68-4205-9536-81d99ddd8ae8_terseLabel_en-US" xlink:label="lab_efoi_HuangNoteMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Huang Note</link:label>
    <link:label id="lab_efoi_HuangNoteMember_label_en-US" xlink:label="lab_efoi_HuangNoteMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Huang Note [Member]</link:label>
    <link:label id="lab_efoi_HuangNoteMember_documentation_en-US" xlink:label="lab_efoi_HuangNoteMember" 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">Huang Note [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_HuangNoteMember" xlink:href="efoi-20220930.xsd#efoi_HuangNoteMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_HuangNoteMember" xlink:to="lab_efoi_HuangNoteMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_722a900b-83fd-445c-96ad-2cd55d8654eb_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_InventoryReserveRollForward_34e3c2f2-472d-47a7-9d34-4e876ccf7a72_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-20220930.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_efoi_TotalExpendituresMember_dca42922-b9bf-45cf-96f4-91153b03d62d_terseLabel_en-US" xlink:label="lab_efoi_TotalExpendituresMember" xlink: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 Expenditures</link:label>
    <link:label id="lab_efoi_TotalExpendituresMember_label_en-US" xlink:label="lab_efoi_TotalExpendituresMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total Expenditures [Member]</link:label>
    <link:label id="lab_efoi_TotalExpendituresMember_documentation_en-US" xlink:label="lab_efoi_TotalExpendituresMember" 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">Total Expenditures</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_TotalExpendituresMember" xlink:href="efoi-20220930.xsd#efoi_TotalExpendituresMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_TotalExpendituresMember" xlink:to="lab_efoi_TotalExpendituresMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_84419344-7145-496c-907b-8053e2a1e9c7_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/2022/dei-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_2f600db9-85c2-409c-9010-d1b1cca49739_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_9fb4c2fe-08a6-4480-9398-cdfe81a3f7b6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_LiabilitiesAbstract_d01d5796-7824-4196-af9e-b3eacb002728_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingLeasePayments_147fe5f0-cc80-4c1b-8911-6141ca1d1c1e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_EmployeeStockOptionMember_b12b3f11-cbce-44b6-acab-395b221d4a6c_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink: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 Option</link:label>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink: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 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember" xlink:to="lab_us-gaap_EmployeeStockOptionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_6d73e2f9-ddee-4d51-9f56-74b57fd1396a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OtherIncomeAndOtherExpenseDisclosureTextBlock_ebbacf73-5375-4c24-9d16-439a1148e6fb_terseLabel_en-US" xlink:label="lab_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock" xlink: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 Income</link:label>
    <link:label id="lab_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock" xlink: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 Other Expense Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock" xlink:to="lab_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain_29b24d5d-e19e-4b5d-920e-bb5b40e1b644_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AllowanceForDoubtfulAccountsReceivableCurrent_73711088-64d9-4111-87fc-eee6fc8ba21e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SaleOfStockPricePerShare_0c2c1f2a-5433-4010-89d9-51d0eee1aeeb_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RestructuringAndRelatedActivitiesDisclosureTextBlock_e8013fb7-a95a-41e4-8980-9e2be61e9f01_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_CommonStockSharesAuthorized_77cd0a8d-3319-4c0d-9913-fa4f0002de8f_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_9a8da9af-af99-43d2-aeb9-7ecd61f39d48_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink: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 Related Party Transactions, by Related Party [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink: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 Related Party Transactions, by Related Party [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyLiabilityLineItems_d8899a66-545f-4cb4-98c7-0cce2f480c24_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ClassOfWarrantOrRightAxis_ce6cb8fc-ded2-4a6a-ad1d-9d5796b40162_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightAxis" xlink: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 Warrant or Right [Axis]</link:label>
    <link:label id="lab_us-gaap_ClassOfWarrantOrRightAxis_label_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightAxis" xlink: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 [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfWarrantOrRightAxis" xlink:to="lab_us-gaap_ClassOfWarrantOrRightAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingExpenses_58cce27e-0758-42ad-95bc-3335e680161a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_1a143ffd-683e-4105-b8f9-190f788a76b4_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-20220930.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_srt_MaximumMember_4ef4f9f2-99f6-435a-9fb3-d5092a4b561e_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_AccumulatedOtherComprehensiveIncomeLossNetOfTax_e21c292a-be80-4c38-a6b7-d2e4f23f2e95_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold_12eeedac-8958-4c8a-87c3-6ffd972c7402_terseLabel_en-US" xlink:label="lab_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold" xlink: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 consecutive days for which the bid price was below threshold</link:label>
    <link:label id="lab_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold_label_en-US" xlink:label="lab_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number Of Consecutive Days For Bid Price, Below Threshold</link:label>
    <link:label id="lab_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold_documentation_en-US" xlink:label="lab_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold" 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">Number Of Consecutive Days For Bid Price, Below Threshold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold" xlink:href="efoi-20220930.xsd#efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold" xlink:to="lab_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_136dcc10-e7ee-40ea-b622-c41d38c59d36_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AssetsCurrent_5f43e42f-631b-4514-8778-be9eec76c4ae_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_bcb86b24-34f1-43eb-8c02-25108abd2d36_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">October 2022&#160;to September 2023</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 12 Months</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntitySmallBusiness_094c30b0-e760-4493-a001-be7d85ac4260_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/2022/dei-2022.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_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_e5759696-ef2b-48a0-b541-4f1994b9848a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SharesOutstanding_283fb2c6-5c01-4ae6-8c2c-7ce75962ce8c_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">Beginning balance (in shares)</link:label>
    <link:label id="lab_us-gaap_SharesOutstanding_01b8a4a8-51ce-41cf-8f75-ef8addc03865_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">Ending balance (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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_PromissoryNoteAxis_7b7466c8-8d44-40ab-9699-a7cff73e5591_terseLabel_en-US" xlink:label="lab_efoi_PromissoryNoteAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Promissory note [Axis]</link:label>
    <link:label id="lab_efoi_PromissoryNoteAxis_label_en-US" xlink:label="lab_efoi_PromissoryNoteAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Promissory note [Axis]</link:label>
    <link:label id="lab_efoi_PromissoryNoteAxis_documentation_en-US" xlink:label="lab_efoi_PromissoryNoteAxis" 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">Promissory note</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PromissoryNoteAxis" xlink:href="efoi-20220930.xsd#efoi_PromissoryNoteAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PromissoryNoteAxis" xlink:to="lab_efoi_PromissoryNoteAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified_80c2a901-6e67-45ff-a828-317e46842173_terseLabel_en-US" xlink:label="lab_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" xlink: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 - modification</link:label>
    <link:label id="lab_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified_label_en-US" xlink:label="lab_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" xlink: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 Reclassified</link:label>
    <link:label id="lab_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified_documentation_en-US" xlink:label="lab_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" 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">Adjustments to Additional Paid in Capital, Warrant Reclassified</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" xlink:href="efoi-20220930.xsd#efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" xlink:to="lab_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_e0cb12c8-4127-4f42-a978-bf89d06ee500_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingLossCarryforwardsTable_67cdfedb-47c8-4fb7-bf3d-2d97410dde42_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_SignificantAccountingPoliciesTextBlock_b10996e3-87b0-4c39-a6ce-df9037bdadc1_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OtherNoncashIncome_602aaff4-4066-4871-a32e-ff1edc9e4cb6_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherNoncashIncome" 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">Other income</link:label>
    <link:label id="lab_us-gaap_OtherNoncashIncome_label_en-US" xlink:label="lab_us-gaap_OtherNoncashIncome" xlink: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 Noncash Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNoncashIncome" xlink:to="lab_us-gaap_OtherNoncashIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_dbe9bfb2-72d9-48b8-ae1b-6c5d09345ec8_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_7c275b27-5c39-4822-be72-7ff00d0d173d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_fd26d329-081a-44a1-ba97-e5380905484b_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DepositsAssetsCurrent_3f685bdf-a171-4739-a3f4-908a3fa0f705_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_9064277e-bce2-4db5-9c87-9bd929ac8bb0_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-20220930.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_AmortizationOfDebtDiscountPremium_ae9c4cb6-32c8-4777-9bf6-57732f55e687_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfDebtDiscountPremium" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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_AmortizationOfDebtDiscountPremium_label_en-US" xlink:label="lab_us-gaap_AmortizationOfDebtDiscountPremium" xlink: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 Debt Discount (Premium)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfDebtDiscountPremium"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfDebtDiscountPremium" xlink:to="lab_us-gaap_AmortizationOfDebtDiscountPremium" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_0e0a5217-0bed-4bb8-8362-4e4df66e1795_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">October 2025 to September 2026</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SubleaseIncome_cbb6d799-728d-4cef-b28e-1e942c68543d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PropertyPlantAndEquipmentTypeDomain_8cd1d20e-97e2-4967-b2f1-3651ef3f69e3_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_63a7ebe2-caab-478d-91a2-56468edfa316_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-20220930.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_IncreaseDecreaseInAccountsReceivable_06546ba7-e44c-4a41-9ff7-a9e181e7bb72_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_Security12bTitle_fd9e9fea-b115-40b4-bd3f-323f4fbd17ce_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/2022/dei-2022.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_us-gaap_SubsequentEventLineItems_fb1fccdc-b7d8-41b6-9adf-10607b269e81_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DebtInstrumentLineItems_c323fa00-7048-4a12-aada-b26274f1775c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_ToolingMember_fc248f25-a372-4cf0-97e7-3fe5900ec5b9_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-20220930.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_ClassOfStockLineItems_841f3f0d-c194-4dec-8fdf-beef8423b0e7_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OperatingLeaseLiability_76821498-e7f4-4b0a-88b6-f2410ae1fc68_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_be3bf71b-18d9-4b49-9965-7d5acf0e3aa1_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OtherNonoperatingIncome_9345d9ab-bf8d-491c-9995-66861a4b7117_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncome" 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">Other income</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncome_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncome" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncome" xlink:to="lab_us-gaap_OtherNonoperatingIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_0a6ccab6-e917-45e6-92d7-e000dbc68c79_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised_3611f65d-a3b8-4e76-93f1-5e294fa26670_terseLabel_en-US" xlink:label="lab_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised" xlink: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_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised_label_en-US" xlink:label="lab_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised" xlink: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 The Period, Shares, Warrants Exercised</link:label>
    <link:label id="lab_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised_documentation_en-US" xlink:label="lab_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised" 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">Stock Issued During The Period, Shares, Warrants Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised" xlink:href="efoi-20220930.xsd#efoi_StockIssuedDuringThePeriodSharesWarrantsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised" xlink:to="lab_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentNumberOfCreditFacilities_945f975a-a2db-405f-ba49-89968f475547_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-20220930.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_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_0395142e-d077-4e12-a0af-f977e863347f_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_df345f8e-dcb4-4c59-baeb-42df7321bb20_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_5fca607a-2b28-4bd6-8d55-5ed672ca54bc_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_MMMProductsMember_146b9dbf-e207-4a4c-880e-3caefac3d271_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-20220930.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_9b8c7dad-65f2-42a6-a16a-b147c4318076_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-20220930.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_DisposalGroupIncludingDiscontinuedOperationInventory1_cdda9a47-c8bf-49bb-92a3-3f06e62efa8a_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposed inventory</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Inventory</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_60caf6a9-8f75-4f05-a1b4-3b6f85de6414_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_07d98aa4-b910-47d2-8506-e6f663c2c476_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ProceedsFromRepaymentsOfLinesOfCredit_2ef823a0-285a-4f1f-963a-2ff4e7bfc072_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 payments on the credit line borrowings - Credit Facilities</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AccountsPayableCurrent_dcaca5e5-e067-4e74-a99b-389fe10350d0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncomeTaxAuthorityAxis_4bb9d78c-8245-4190-87c0-f7ef988f0f47_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_DebtInstrumentUnamortizedDiscount_4df97cf4-e9fa-43a5-ad9f-0e9d49e8c8cb_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_IncomeLossFromContinuingOperationsPerBasicShare_813997c5-92f3-4fa0-8a3e-7fc152212182_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink: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, basic (USD per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink: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 Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_eba33773-212e-41a1-a8cb-74fb7d648bfc_negatedLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" 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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink: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 and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NatureOfOperations_4a976a74-c985-4aef-9c43-e931d1a5ad0f_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_WarrantMember_c245b4a5-3d0b-4151-be91-949e166ba73d_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">Warrants</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityFilerCategory_167b8344-9c28-44c2-963a-9af9c8a62d51_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/2022/dei-2022.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_WeightedAverageNumberOfSharesOutstandingBasic_f79946f9-be05-4d92-9239-e7e8dc7e7645_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink: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 weighted average common shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ReceivablesFacilityMember_73e55b0d-5593-4193-946a-9ac3b8d25378_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-20220930.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_AllocatedShareBasedCompensationExpense_a9cffad5-6fa2-4994-8564-3999655a6ed8_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_InventoryValuationReservesRawMaterials_589db87f-6a1d-4f57-80fb-fad60cdb0f9f_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_31ff5c93-0c48-46d4-9ee8-fb367411a7e6_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-20220930.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_dei_SecurityExchangeName_22b7a695-d21e-4afa-8547-67fefb48d898_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/2022/dei-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_7567ce7f-47a5-4f1c-8e04-d41b29e5f717_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 (USD per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_69bf0a53-d16e-4eec-a086-127e30e9f4ce_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 (USD 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ClassOfWarrantOrRightDomain_c81fbfe9-ae52-4c67-b19c-0cee6fa95355_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightDomain" xlink: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 Warrant or Right [Domain]</link:label>
    <link:label id="lab_us-gaap_ClassOfWarrantOrRightDomain_label_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightDomain" xlink: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 [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain" xlink:to="lab_us-gaap_ClassOfWarrantOrRightDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainLossOnDispositionOfAssets1_7ecf326a-28a4-440d-8a65-14be4800f6b3_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnDispositionOfAssets1" 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">Loss on write-off of fixed assets</link:label>
    <link:label id="lab_us-gaap_GainLossOnDispositionOfAssets1_label_en-US" xlink:label="lab_us-gaap_GainLossOnDispositionOfAssets1" xlink: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 Disposition of Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnDispositionOfAssets1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnDispositionOfAssets1" xlink:to="lab_us-gaap_GainLossOnDispositionOfAssets1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_63d1fac5-57a9-4e67-a720-b5ce646f1121_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_LineOfCreditFacilityTerminationNoticePeriod_a6aad7f8-67f0-4dc8-8df3-05fc4458254b_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityTerminationNoticePeriod" xlink: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 notice period</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityTerminationNoticePeriod_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityTerminationNoticePeriod" xlink: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, Termination Notice Period</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityTerminationNoticePeriod_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityTerminationNoticePeriod" 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, Termination Notice Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityTerminationNoticePeriod" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityTerminationNoticePeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityTerminationNoticePeriod" xlink:to="lab_efoi_LineOfCreditFacilityTerminationNoticePeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockValue_608e05d1-f4c1-4762-b0ba-830e7cdff895_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: Authorized: 5,000,000 shares (3,300,000 designated as Series A Convertible Preferred Stock) at September 30, 2022 and December 31, 2021, Issued and outstanding: 876,447 at September 30, 2022 and December 31, 2021</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_A2022StreetervilleNoteMember_bed03ef4-64c2-4287-92ef-5d5cf0e53f4d_terseLabel_en-US" xlink:label="lab_efoi_A2022StreetervilleNoteMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022 Streeterville Note</link:label>
    <link:label id="lab_efoi_A2022StreetervilleNoteMember_label_en-US" xlink:label="lab_efoi_A2022StreetervilleNoteMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022 Streeterville Note [Member]</link:label>
    <link:label id="lab_efoi_A2022StreetervilleNoteMember_documentation_en-US" xlink:label="lab_efoi_A2022StreetervilleNoteMember" 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">2022 Streeterville Note</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022StreetervilleNoteMember" xlink:href="efoi-20220930.xsd#efoi_A2022StreetervilleNoteMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_A2022StreetervilleNoteMember" xlink:to="lab_efoi_A2022StreetervilleNoteMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange_93391f4b-fd7e-4a03-a566-3e7a1bde8a12_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" xlink: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 if delisted from Nasdaq</link:label>
    <link:label id="lab_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange_label_en-US" xlink:label="lab_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" xlink: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, Percentage Increase If Delisted From Security Exchange</link:label>
    <link:label id="lab_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" 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, Percentage Increase If Delisted From Security Exchange</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" xlink:to="lab_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_8fe764b8-efd1-41f3-b98d-4431e2b91cb3_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_8c708af1-cf04-4de3-a433-76b04a4eba5a_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">Issuance of common stock upon conversion from 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfOperatingLeasedAssetsTable_62aa5390-f500-43dc-97c1-db568155a64a_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable" xlink: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 Operating Leased Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable" xlink: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 Operating Leased Assets [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfOperatingLeasedAssetsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable" xlink:to="lab_us-gaap_ScheduleOfOperatingLeasedAssetsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_885c4dbd-df5d-41fb-9d03-490c5e06a573_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/2022/dei-2022.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_DebtInstrumentTable_909261de-6453-447a-992d-7d23eab1086d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_UltravioletCLightDisinfectionRobotsMember_addfdeda-0503-4446-8000-6dd91da3c7b4_terseLabel_en-US" xlink:label="lab_efoi_UltravioletCLightDisinfectionRobotsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ultraviolet-C light disinfection robots</link:label>
    <link:label id="lab_efoi_UltravioletCLightDisinfectionRobotsMember_label_en-US" xlink:label="lab_efoi_UltravioletCLightDisinfectionRobotsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ultraviolet-C Light Disinfection Robots [Member]</link:label>
    <link:label id="lab_efoi_UltravioletCLightDisinfectionRobotsMember_documentation_en-US" xlink:label="lab_efoi_UltravioletCLightDisinfectionRobotsMember" 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">Ultraviolet-C light disinfection robots [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_UltravioletCLightDisinfectionRobotsMember" xlink:href="efoi-20220930.xsd#efoi_UltravioletCLightDisinfectionRobotsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_UltravioletCLightDisinfectionRobotsMember" xlink:to="lab_efoi_UltravioletCLightDisinfectionRobotsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract_c04eb458-dbf3-4cfa-b528-866e254e6586_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_December2021PrivatePlacementMember_ca8c2d4f-b32f-4d94-97c5-7aa0a859fa3c_terseLabel_en-US" xlink:label="lab_efoi_December2021PrivatePlacementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">December 2021 Private Placement</link:label>
    <link:label id="lab_efoi_December2021PrivatePlacementMember_label_en-US" xlink:label="lab_efoi_December2021PrivatePlacementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">December 2021 Private Placement [Member]</link:label>
    <link:label id="lab_efoi_December2021PrivatePlacementMember_documentation_en-US" xlink:label="lab_efoi_December2021PrivatePlacementMember" 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">December 2021 Private Placement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_December2021PrivatePlacementMember" xlink:href="efoi-20220930.xsd#efoi_December2021PrivatePlacementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_December2021PrivatePlacementMember" xlink:to="lab_efoi_December2021PrivatePlacementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RegionalCommercialLightingRetrofitCompanyMember_7afd950f-faa8-4da8-a910-0113db392269_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">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-20220930.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_NotesPayableRelatedPartiesClassifiedCurrent_bf3cb8a7-5024-4c18-8ef6-85aa5ca556c7_terseLabel_en-US" xlink:label="lab_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related party promissory note payable</link:label>
    <link:label id="lab_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent_label_en-US" xlink:label="lab_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notes Payable, Related Parties, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableRelatedPartiesClassifiedCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent" xlink:to="lab_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PaymentsForClearingFees_100ec923-6054-45ff-8958-92ed3796080c_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-20220930.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_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_09055bc9-e2e3-4054-b2f7-54d411fb6a43_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_2f5460ae-8edb-4cd2-a3da-b1689630d466_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_ScenarioForecastMember_83066fbd-793d-4820-ae22-0256119a0c6b_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_cac5ccce-5798-46e6-9331-5c2064e37bef_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_14cb8f01-9ee1-4f2a-a474-5ba86239059d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_LiabilitiesAndStockholdersEquity_8edc0894-cb8c-4276-ab12-e752af8a6d28_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_TypeOfArrangementAxis_0281301c-b432-4d59-b990-c39c05db63fc_terseLabel_en-US" xlink:label="lab_us-gaap_TypeOfArrangementAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Collaborative Arrangement and Arrangement Other than Collaborative [Axis]</link:label>
    <link:label id="lab_us-gaap_TypeOfArrangementAxis_label_en-US" xlink:label="lab_us-gaap_TypeOfArrangementAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Collaborative Arrangement and Arrangement Other than Collaborative [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfArrangementAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfArrangementAxis" xlink:to="lab_us-gaap_TypeOfArrangementAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_800cfcc5-34b7-4fc9-94d4-94088d16cb48_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RelatedPartyTransactionsByRelatedPartyAxis_07823e75-8893-4dff-8ea4-b55c6545dfef_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party [Axis]</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NonUsMember_84d0ff5e-c5ab-4fe2-92cb-3018746cbecd_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StandardProductWarrantyPolicy_8c43a974-b1d5-4c6a-97e3-55b68227cbf5_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5ec64798-d84f-4267-853e-553739cc1592_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DebtInstrumentRedemptionPeriodOneMember_6ba09396-ec30-4b81-a40e-ef08a9aaafd4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_d897a462-a92a-4844-9768-c79ed457ebd4_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">October 2026 to September 2027</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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_CurrentFiscalYearEndDate_7361db61-a6cd-420a-afa8-484797e7b7da_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/2022/dei-2022.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_ImpairmentEffectsOnEarningsPerShareLineItems_67ab21de-0a86-4b4e-a792-12ebf957c857_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_839b8b67-82af-4ba5-aff8-d14cc6c8d09b_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SaleOfStockNameOfTransactionDomain_ac280c51-0153-455c-b045-6ea3a2fd7e6c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_351fcf96-6359-47e4-b850-8c2fa961b7e4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_PaymentsOfStockIssuanceCosts_ffabdb6e-07a7-4e26-ac5c-701e50f0bfc1_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">Offering costs paid on the issuance of common stock and warrants</link:label>
    <link:label id="lab_us-gaap_PaymentsOfStockIssuanceCosts_c6271546-4a94-4e6b-b285-ad2f9a287eec_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfStockIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_GainLossOnSaleOfPropertyPlantEquipment_33a7b6e7-af4b-4bed-a6e6-9d701518a36e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" 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">Loss on write-off of property and equipment</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink: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 Disposition of Property Plant Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_6247b1cd-9a56-4c85-983a-6f11d9d55f2e_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink: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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink: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, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_CommonStockClosingBidPriceThreshold_9ecedab3-11f9-49c3-9ac0-cf56f9f3c734_terseLabel_en-US" xlink:label="lab_efoi_CommonStockClosingBidPriceThreshold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Closing bid price of common stock (in USD per share)</link:label>
    <link:label id="lab_efoi_CommonStockClosingBidPriceThreshold_label_en-US" xlink:label="lab_efoi_CommonStockClosingBidPriceThreshold" xlink: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, Closing Bid Price Threshold</link:label>
    <link:label id="lab_efoi_CommonStockClosingBidPriceThreshold_documentation_en-US" xlink:label="lab_efoi_CommonStockClosingBidPriceThreshold" 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">Common Stock, Closing Bid Price Threshold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommonStockClosingBidPriceThreshold" xlink:href="efoi-20220930.xsd#efoi_CommonStockClosingBidPriceThreshold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_CommonStockClosingBidPriceThreshold" xlink:to="lab_efoi_CommonStockClosingBidPriceThreshold" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OffshoreSupplierMember_a1cb12e1-6ced-4226-b3eb-e50d97328e19_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-20220930.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_ConcentrationRiskByTypeAxis_8e77361f-24f5-4e67-a2c5-1ea9f1af1390_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LiabilitiesCurrent_073cc1cc-9dad-4e97-a652-c7b1589618f5_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization_a4f964f3-8335-4de1-823d-802a5e8f0be7_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink: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_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink: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, before Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:to="lab_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_594a0927-2298-4e9c-a091-463dbfe28ada_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LongTermNotesPayable_894d779f-07f5-419e-8650-d2555af695c2_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermNotesPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notes payable, net of current maturities, discounts and loan origination fees</link:label>
    <link:label id="lab_us-gaap_LongTermNotesPayable_label_en-US" xlink:label="lab_us-gaap_LongTermNotesPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Notes Payable, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermNotesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermNotesPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermNotesPayable" xlink:to="lab_us-gaap_LongTermNotesPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_79a760de-3816-401b-b038-10726f11dc9e_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-20220930.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_RestructuringCostAndReserveLineItems_5c5e75e1-e2cf-4e87-a6a7-9147b8ba1151_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_01978875-4a88-4965-ac75-9cc141afa3a5_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_NonoperatingIncomeExpenseAbstract_1a9df063-8737-4bd1-a9b0-933195158031_terseLabel_en-US" xlink:label="lab_us-gaap_NonoperatingIncomeExpenseAbstract" xlink: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_NonoperatingIncomeExpenseAbstract_label_en-US" xlink:label="lab_us-gaap_NonoperatingIncomeExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonoperating Income (Expense) [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonoperatingIncomeExpenseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="lab_us-gaap_NonoperatingIncomeExpenseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_5f37fb8d-8b98-4a71-b5d9-7c06d3be1e58_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityAddressAddressLine2_c099911d-81a1-416b-afc1-c5037369546a_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/2022/dei-2022.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_dei_EntityAddressAddressLine1_6a42527d-da8d-412d-a572-f5724f31df31_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/2022/dei-2022.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_us-gaap_LongTermPurchaseCommitmentTable_e3391ab5-8a4b-4942-81bf-277414dc38bb_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_IncomeTaxAuthorityDomain_da161da5-056b-4c94-be7c-939ecbd44763_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_ProductOrServiceAxis_8d23d60c-94c6-49b1-9618-b212bdaa79b2_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_ClassOfStockDomain_9474d2f1-1afb-4664-9131-ed58a1adfc60_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_InterestExpense_589f8e30-3fdd-4ee8-b2d7-05aac232cc5c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_7cf78260-fdb2-4267-9330-6fe1fe292960_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-20220930.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_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock_7d503d9e-8e37-4606-bfd4-5d53973be7fd_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-20220930.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_CreditFacilityAxis_2032191b-c554-412b-9033-711335829652_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_RelatedPartyTransactionAmountsOfTransaction_0daae6fa-a208-4559-ab5d-12551cc9cb17_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionAmountsOfTransaction" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amounts of transaction</link:label>
    <link:label id="lab_us-gaap_RelatedPartyTransactionAmountsOfTransaction_label_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionAmountsOfTransaction" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Related Party Transaction, Amounts of Transaction</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction" xlink:to="lab_us-gaap_RelatedPartyTransactionAmountsOfTransaction" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryValuationReserves_5a684120-4767-45b1-8a8c-683e4a0dc080_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_InventoryValuationReserves" 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">Reserves for excess, obsolete, and slow-moving inventories</link:label>
    <link:label id="lab_us-gaap_InventoryValuationReserves_label_en-US" xlink:label="lab_us-gaap_InventoryValuationReserves" xlink: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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryValuationReserves" xlink:to="lab_us-gaap_InventoryValuationReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_8fa96f6a-98a9-49e0-93bd-03a3a3951b21_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 and warrants</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-20220930.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_InventoryDisclosureTextBlock_7da29138-510a-444c-830c-857d6bdcd408_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LongTermPurchaseCommitmentLineItems_2ff6f65f-db66-4dbb-abbb-0c7fa1106085_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_EquityAbstract_label_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink: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 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract" xlink:to="lab_us-gaap_EquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTable_e7f6afc6-ae7d-4dc9-9330-b7c0871d18e2_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_e2828341-0f25-4087-ba90-9a7b40055b54_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" 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">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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_InventoryDisclosureAbstract_8851ae8e-f3fc-4563-84e2-7b49500195bc_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_EntityTaxIdentificationNumber_6b2c9a65-7dfc-4975-b81a-7b64cd91cb04_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/2022/dei-2022.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_us-gaap_UnamortizedDebtIssuanceExpense_9628ff19-c613-4098-b01b-ee0e3173e43d_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_67904e0b-1306-472c-a9a1-8006ed5286ed_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_7ac88b4e-b2de-41a6-9593-1564c3a0447c_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct_278acd59-4737-48be-a3f1-d699f87e8e24_terseLabel_en-US" xlink:label="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ERTC refund</link:label>
    <link:label id="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct_label_en-US" xlink:label="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payroll Tax Credit, Employee Retention Credit Under The CARES Act</link:label>
    <link:label id="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct_documentation_en-US" xlink:label="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" 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">Payroll Tax Credit, Employee Retention Credit Under The CARES Act</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" xlink:href="efoi-20220930.xsd#efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" xlink:to="lab_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_a9eee9a0-8b33-4d0f-a5cf-099e3f4dfed5_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ProceedsFromNotesPayable_e290e150-c7b2-44d1-80b0-acae3d37cd98_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromNotesPayable" xlink: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 related party promissory note payable</link:label>
    <link:label id="lab_us-gaap_ProceedsFromNotesPayable_label_en-US" xlink:label="lab_us-gaap_ProceedsFromNotesPayable" xlink: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 Notes Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromNotesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromNotesPayable" xlink:to="lab_us-gaap_ProceedsFromNotesPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_94ec9642-eed3-4bed-9078-6f815f4c9dc0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_dd6ccfe6-af0f-4205-8bc6-a3fc91a95ffe_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" 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 at cost</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink: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 and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_502bd823-ce82-48c2-8cab-024163f05e49_terseLabel_en-US" xlink:label="lab_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" xlink: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_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_label_en-US" xlink:label="lab_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" xlink: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 (Payments For) Issuance Of Common Stock And Warrants</link:label>
    <link:label id="lab_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_documentation_en-US" xlink:label="lab_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" 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 (Payments For) Issuance Of Common Stock And Warrants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" xlink:to="lab_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_c7042266-b152-4a64-a3c5-c9f985b5435d_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 in 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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_6ef9beca-9581-4400-ad8a-647d929987ac_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_DistributorToTheU.S.NavyMember_7032c437-2765-43e7-9418-e0d7a3a8a732_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-20220930.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_86b8154e-11f0-46ca-af50-429297a59458_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-20220930.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_dei_EntityCentralIndexKey_a2516e41-bd99-4adc-9798-1411fb65bbdd_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/2022/dei-2022.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a18fc0fa-6f4b-4f0f-ae3b-f7e91e4deeff_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_9bab0551-6137-4b29-a0e4-e71ee9eb16d2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" 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">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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_3192e735-9791-48a4-b24d-6b508b3ff831_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ConcentrationRiskCreditRisk_e87f16d1-38c4-40b9-ae56-3d686d3cef41_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_OtherAccruedLiabilitiesCurrent_eb833a9e-3f1e-4740-b700-7731944373d9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_dei_CityAreaCode_7f105c8f-4f3f-4642-bf5c-8f0aaf08522d_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/2022/dei-2022.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_AccruedProfessionalFeesCurrent_56cd7977-7017-41af-b694-f1e2e8842c66_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_AssetsAbstract_6aa36c29-458a-45e6-81d0-6e616a4f8f39_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LongtermDebtTypeDomain_7d5be9d8-c75d-4d36-b80c-b2039fadd4b2_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PurchaseObligation_358b27b8-8163-4985-9fc5-054e65509922_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_StatementOfStockholdersEquityAbstract_2c682948-fdaf-4828-8cd7-b967dfc908a6_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_SubsidiarySaleOfStockAxis_17bee282-71db-42b6-a3c9-7f4ded67c3c0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_LinesOfCreditCurrent_5a4aff8c-77c9-4e9d-8f18-9c06bc6c152e_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_DebtInstrumentRedemptionPeriodAxis_d26be095-c0dc-4800-b1b3-a1846be1d143_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_DebtInstrumentBaseRateVariable_4e141c3b-fc43-40e2-9c81-e9ee2631a3b6_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentBaseRateVariable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Base rate, variable</link:label>
    <link:label id="lab_efoi_DebtInstrumentBaseRateVariable_label_en-US" xlink:label="lab_efoi_DebtInstrumentBaseRateVariable" xlink: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, Base Rate, Variable</link:label>
    <link:label id="lab_efoi_DebtInstrumentBaseRateVariable_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentBaseRateVariable" 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, Base Rate, Variable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentBaseRateVariable" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentBaseRateVariable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentBaseRateVariable" xlink:to="lab_efoi_DebtInstrumentBaseRateVariable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4436f03a-963a-4b49-903f-d8b44e3c36ae_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ProductWarrantyLiabilityTable_267cc4c0-84bb-4f57-8116-1fb0d33266c4_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_EarningsPerSharePolicyTextBlock_08e8540d-9625-4f7a-a0dd-9b0dc8ff51b0_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ShareBasedCompensation_3f2e21be-0502-4f14-8f98-11935d312da9_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_efoi_January2020EquityOfferingMember_4fb65782-d892-43ac-b1eb-3065c63f25cf_terseLabel_en-US" xlink:label="lab_efoi_January2020EquityOfferingMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">January 2020 Equity Offering</link:label>
    <link:label id="lab_efoi_January2020EquityOfferingMember_label_en-US" xlink:label="lab_efoi_January2020EquityOfferingMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">January 2020 Equity Offering [Member]</link:label>
    <link:label id="lab_efoi_January2020EquityOfferingMember_documentation_en-US" xlink:label="lab_efoi_January2020EquityOfferingMember" 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">January 2020 Equity Offering</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingMember" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_January2020EquityOfferingMember" xlink:to="lab_efoi_January2020EquityOfferingMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_4ab0141d-410d-472d-9ec6-766861477b4d_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink: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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink: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, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateAxis_69da9b9c-47f8-4ced-b0cd-e042ba68162a_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_PaymentsToAcquirePropertyPlantAndEquipment_99957daa-f002-4740-8e53-f747b1a3d359_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_us-gaap_ResearchAndDevelopmentExpenseMember_8ea2e788-3099-4a25-9791-ee6fe2185cf8_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_LongTermPurchaseCommitmentAmount_862413a2-7f0b-46db-8ffe-dcbdc7c1e573_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_0c70a7de-3f57-4202-9318-d6f4c3e93002_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_CostOfSalesMember_59dc2a59-77da-49bb-82fe-18cb364aaceb_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="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.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_srt_NameOfMajorCustomerDomain_d6c541bf-0d72-49f4-8b06-3b7000b79dc6_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="https://xbrl.fasb.org/srt/2022/elts/srt-2022.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_efoi_LineOfCreditFacilityAnnualFacilityFee_08acd9d5-caff-47ac-8a0c-18b5455c6c36_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityAnnualFacilityFee" xlink: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_efoi_LineOfCreditFacilityAnnualFacilityFee_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityAnnualFacilityFee" xlink: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</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityAnnualFacilityFee_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityAnnualFacilityFee" 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</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityAnnualFacilityFee" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityAnnualFacilityFee"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityAnnualFacilityFee" xlink:to="lab_efoi_LineOfCreditFacilityAnnualFacilityFee" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>efoi-20220930_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 2022 Workiva-->
<!--r:a82ef2f0-ede8-4d32-8f58-fa18bc743a3a,g:58e0cf05-7a74-4b84-ba8e-bd6d336a4f21-->
<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-20220930.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_1caccf28-794c-4099-8f31-3874e60b9570" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_b993e304-2742-452b-bd19-73c383b57e55" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_DocumentType_b993e304-2742-452b-bd19-73c383b57e55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport_a7fba60d-27fb-4609-a3d8-80b40b2fe39b" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentQuarterlyReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_DocumentQuarterlyReport_a7fba60d-27fb-4609-a3d8-80b40b2fe39b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_0a9e1447-9b7f-4b8c-9807-ab15055b1f29" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_DocumentPeriodEndDate_0a9e1447-9b7f-4b8c-9807-ab15055b1f29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_1328738e-df4f-44ab-a580-095453683282" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_DocumentTransitionReport_1328738e-df4f-44ab-a580-095453683282" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_867caf43-8639-4ddb-841f-875f806cc677" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityFileNumber_867caf43-8639-4ddb-841f-875f806cc677" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_614e378e-4aec-49f4-9966-77ea73cdbebf" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityIncorporationStateCountryCode_614e378e-4aec-49f4-9966-77ea73cdbebf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_2c713e63-c2fb-4632-91e3-3003fe43da83" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityTaxIdentificationNumber_2c713e63-c2fb-4632-91e3-3003fe43da83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_b8b61ce4-cd5e-4892-83f6-092fc2c8083d" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityAddressAddressLine1_b8b61ce4-cd5e-4892-83f6-092fc2c8083d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine2_e6686a16-b63d-4bb4-8c54-3e5ca8680b53" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine2"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityAddressAddressLine2_e6686a16-b63d-4bb4-8c54-3e5ca8680b53" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_e6ca7fc9-afcf-4fe6-bb93-bd2d1ea820dc" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityAddressCityOrTown_e6ca7fc9-afcf-4fe6-bb93-bd2d1ea820dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_8722f3bc-e800-4a2c-8e65-f6c65e228afe" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityAddressStateOrProvince_8722f3bc-e800-4a2c-8e65-f6c65e228afe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_c7ac9f64-3803-4bf6-8657-1a8c2173f9f5" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityAddressPostalZipCode_c7ac9f64-3803-4bf6-8657-1a8c2173f9f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_3c33872c-a1fa-4bb7-b4c4-576a1e058d71" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_CityAreaCode_3c33872c-a1fa-4bb7-b4c4-576a1e058d71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_03b12703-c011-4e32-99b3-b56717ea8b74" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_LocalPhoneNumber_03b12703-c011-4e32-99b3-b56717ea8b74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_7da71f61-679b-49dd-815e-e541e3171d95" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_Security12bTitle_7da71f61-679b-49dd-815e-e541e3171d95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_2452226a-99bd-434d-bc38-3d7b8e8aba79" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_TradingSymbol_2452226a-99bd-434d-bc38-3d7b8e8aba79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_3fee8057-931d-4e95-98f1-a98022bea2f0" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_SecurityExchangeName_3fee8057-931d-4e95-98f1-a98022bea2f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_19200164-cfe7-4e3a-8b43-731844d389de" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityCurrentReportingStatus_19200164-cfe7-4e3a-8b43-731844d389de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_725516a8-4edb-4ad6-8ee0-69f0028cd85e" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityInteractiveDataCurrent_725516a8-4edb-4ad6-8ee0-69f0028cd85e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_513d5f02-069c-4ef6-a3c7-a51e81c3917a" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityFilerCategory_513d5f02-069c-4ef6-a3c7-a51e81c3917a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_9fcefe4e-25c2-4edd-aa89-6ed699758f42" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntitySmallBusiness_9fcefe4e-25c2-4edd-aa89-6ed699758f42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_b83bb4f3-f067-4586-b60a-fd2521ca120e" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityEmergingGrowthCompany_b83bb4f3-f067-4586-b60a-fd2521ca120e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_32017705-e310-4d6f-92ae-f7bdbce97013" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityShellCompany_32017705-e310-4d6f-92ae-f7bdbce97013" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_8d369ca5-8739-4ebf-b42d-8bb016973c78" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_8d369ca5-8739-4ebf-b42d-8bb016973c78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_54d05d70-61bc-42e5-b766-8e294dbbb365" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityCentralIndexKey_54d05d70-61bc-42e5-b766-8e294dbbb365" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_939a228c-40f2-4ca4-9b5b-69da00430dac" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_CurrentFiscalYearEndDate_939a228c-40f2-4ca4-9b5b-69da00430dac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_9e245ef0-222f-4227-b42c-b0f1d379a0fa" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_DocumentFiscalYearFocus_9e245ef0-222f-4227-b42c-b0f1d379a0fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_c6e02856-a854-4b4a-94b2-39ab0a1299f0" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_DocumentFiscalPeriodFocus_c6e02856-a854-4b4a-94b2-39ab0a1299f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_f5d91055-0786-4092-9c77-af6a18abee40" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_AmendmentFlag_f5d91055-0786-4092-9c77-af6a18abee40" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_9962c11a-0f29-40e8-bcac-c46323562c91" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_1caccf28-794c-4099-8f31-3874e60b9570" xlink:to="loc_dei_EntityRegistrantName_9962c11a-0f29-40e8-bcac-c46323562c91" 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-20220930.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_1001c4b8-ba36-43e4-80e8-80736e3fd034" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_a2353539-a418-4a96-946f-14a99133f38d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_1001c4b8-ba36-43e4-80e8-80736e3fd034" xlink:to="loc_us-gaap_AssetsAbstract_a2353539-a418-4a96-946f-14a99133f38d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_c0c73206-3dbd-470a-9d19-19e582cbb69e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_a2353539-a418-4a96-946f-14a99133f38d" xlink:to="loc_us-gaap_AssetsCurrentAbstract_c0c73206-3dbd-470a-9d19-19e582cbb69e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_4840ecb4-553c-48e8-970e-6270af8f302f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c0c73206-3dbd-470a-9d19-19e582cbb69e" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_4840ecb4-553c-48e8-970e-6270af8f302f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_067118a8-6cc0-41e5-939e-ef7c7410f4c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c0c73206-3dbd-470a-9d19-19e582cbb69e" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_067118a8-6cc0-41e5-939e-ef7c7410f4c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_d8d02b57-f9f5-41e6-8962-c24f7343019c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c0c73206-3dbd-470a-9d19-19e582cbb69e" xlink:to="loc_us-gaap_InventoryNet_d8d02b57-f9f5-41e6-8962-c24f7343019c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepositsAssetsCurrent_794d0cb3-d9a3-4121-b165-e0961404a6eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepositsAssetsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c0c73206-3dbd-470a-9d19-19e582cbb69e" xlink:to="loc_us-gaap_DepositsAssetsCurrent_794d0cb3-d9a3-4121-b165-e0961404a6eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_d138c10f-97aa-44e5-858a-ecaed50fb49e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c0c73206-3dbd-470a-9d19-19e582cbb69e" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_d138c10f-97aa-44e5-858a-ecaed50fb49e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_8fe20bc7-b712-4816-a56a-096c5c60182e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c0c73206-3dbd-470a-9d19-19e582cbb69e" xlink:to="loc_us-gaap_AssetsCurrent_8fe20bc7-b712-4816-a56a-096c5c60182e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_5f19635a-a7c3-4c23-acdb-2b0fabf1dbf7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_a2353539-a418-4a96-946f-14a99133f38d" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_5f19635a-a7c3-4c23-acdb-2b0fabf1dbf7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_7b2f9625-c2e4-4c91-9a11-1565ca2d0107" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_a2353539-a418-4a96-946f-14a99133f38d" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_7b2f9625-c2e4-4c91-9a11-1565ca2d0107" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_1dd06f72-61e4-475d-8321-1d515fd1b89f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_a2353539-a418-4a96-946f-14a99133f38d" xlink:to="loc_us-gaap_Assets_1dd06f72-61e4-475d-8321-1d515fd1b89f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAbstract_285eab95-1beb-4c9c-bb59-211b2e950383" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_1001c4b8-ba36-43e4-80e8-80736e3fd034" xlink:to="loc_us-gaap_LiabilitiesAbstract_285eab95-1beb-4c9c-bb59-211b2e950383" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_285eab95-1beb-4c9c-bb59-211b2e950383" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_17083459-9dc2-455e-a704-18f40758384e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_AccountsPayableCurrent_17083459-9dc2-455e-a704-18f40758384e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_76aeaf7a-04fe-427c-809a-ef26bc54081f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_76aeaf7a-04fe-427c-809a-ef26bc54081f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent_ebd9562b-2e6a-43d3-bc8e-d2af621302d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedProfessionalFeesCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent_ebd9562b-2e6a-43d3-bc8e-d2af621302d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent_7531af10-1503-4f9a-833f-8705054deaec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_AccruedEmployeeBenefitsCurrent_7531af10-1503-4f9a-833f-8705054deaec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedSalesCommissionCurrent_2b3d81a7-473d-42b0-948b-a780ee697503" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedSalesCommissionCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_AccruedSalesCommissionCurrent_2b3d81a7-473d-42b0-948b-a780ee697503" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualCurrent_dca3c659-2932-49b1-9177-cfba68f6887b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandardProductWarrantyAccrualCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualCurrent_dca3c659-2932-49b1-9177-cfba68f6887b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_8781c100-6506-4975-b15d-b730b6bfa1b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_8781c100-6506-4975-b15d-b730b6bfa1b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_cb35fd90-b4b5-4cdd-a6e2-b19f13530372" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_cb35fd90-b4b5-4cdd-a6e2-b19f13530372" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_caf2339d-4ee3-4f0f-beff-3d84e9b00a16" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_caf2339d-4ee3-4f0f-beff-3d84e9b00a16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableCurrent_cc0faf66-bf6d-4a0e-8005-09a3afa3ea93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableCurrent"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_NotesPayableCurrent_cc0faf66-bf6d-4a0e-8005-09a3afa3ea93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent_065ad672-ced4-46a3-ad00-e7adc544e6ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NotesPayableRelatedPartiesClassifiedCurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent_065ad672-ced4-46a3-ad00-e7adc544e6ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent_cbe369c4-b2af-4f18-9616-d9dfab82c21d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_LinesOfCreditCurrent_cbe369c4-b2af-4f18-9616-d9dfab82c21d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_5dd45bc7-90be-4230-841c-8845471705e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_2422298a-1cc1-452c-ae8c-5fc280ff99d4" xlink:to="loc_us-gaap_LiabilitiesCurrent_5dd45bc7-90be-4230-841c-8845471705e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_bbf4d357-9981-48f4-a16f-2dadf077c8e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_285eab95-1beb-4c9c-bb59-211b2e950383" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_bbf4d357-9981-48f4-a16f-2dadf077c8e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermNotesPayable_5ee1d5be-fec1-4936-b976-819f1dc00376" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermNotesPayable"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_285eab95-1beb-4c9c-bb59-211b2e950383" xlink:to="loc_us-gaap_LongTermNotesPayable_5ee1d5be-fec1-4936-b976-819f1dc00376" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_2ab3d32d-4ac2-4148-a00b-f1875fa30f28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_285eab95-1beb-4c9c-bb59-211b2e950383" xlink:to="loc_us-gaap_Liabilities_2ab3d32d-4ac2-4148-a00b-f1875fa30f28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_507fdb12-b6e0-4750-94cc-42e0cd4b83da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_1001c4b8-ba36-43e4-80e8-80736e3fd034" xlink:to="loc_us-gaap_StockholdersEquityAbstract_507fdb12-b6e0-4750-94cc-42e0cd4b83da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_9a7d9b4b-4ec6-44c0-b25b-f9b76a4e5b52" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_507fdb12-b6e0-4750-94cc-42e0cd4b83da" xlink:to="loc_us-gaap_PreferredStockValue_9a7d9b4b-4ec6-44c0-b25b-f9b76a4e5b52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_f835bec3-a173-4e9b-b5bc-855b773cbe2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_507fdb12-b6e0-4750-94cc-42e0cd4b83da" xlink:to="loc_us-gaap_CommonStockValue_f835bec3-a173-4e9b-b5bc-855b773cbe2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_491c5618-685d-4b2a-aa52-367947c0ecd6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_507fdb12-b6e0-4750-94cc-42e0cd4b83da" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_491c5618-685d-4b2a-aa52-367947c0ecd6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_120a562d-0343-4019-bc7c-5594b65de9c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_507fdb12-b6e0-4750-94cc-42e0cd4b83da" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_120a562d-0343-4019-bc7c-5594b65de9c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_ef568dca-6f77-4b45-9887-9ba5db5d4fb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_507fdb12-b6e0-4750-94cc-42e0cd4b83da" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_ef568dca-6f77-4b45-9887-9ba5db5d4fb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_3679d9d2-bf13-4611-a47c-ad7786193e58" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_507fdb12-b6e0-4750-94cc-42e0cd4b83da" xlink:to="loc_us-gaap_StockholdersEquity_3679d9d2-bf13-4611-a47c-ad7786193e58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_d57725e5-c243-42cc-9824-89fea0ba56ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_1001c4b8-ba36-43e4-80e8-80736e3fd034" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_d57725e5-c243-42cc-9824-89fea0ba56ec" 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-20220930.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_68a2ae0e-e4e4-4845-949f-aceb407c8070" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_b16dbfd3-e45a-4446-902e-c84ef59ecbc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_68a2ae0e-e4e4-4845-949f-aceb407c8070" xlink:to="loc_us-gaap_StatementTable_b16dbfd3-e45a-4446-902e-c84ef59ecbc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_4a562973-90b2-4736-bbf3-bc20e32df6b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_b16dbfd3-e45a-4446-902e-c84ef59ecbc1" xlink:to="loc_us-gaap_StatementClassOfStockAxis_4a562973-90b2-4736-bbf3-bc20e32df6b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_6eb4a3e5-d177-4793-9122-187360d1454e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_4a562973-90b2-4736-bbf3-bc20e32df6b7" xlink:to="loc_us-gaap_ClassOfStockDomain_6eb4a3e5-d177-4793-9122-187360d1454e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_07d4dba8-c10c-4d14-aaa5-0617525b0261" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_6eb4a3e5-d177-4793-9122-187360d1454e" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_07d4dba8-c10c-4d14-aaa5-0617525b0261" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_b16dbfd3-e45a-4446-902e-c84ef59ecbc1" xlink:to="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_10b564d3-8c66-40eb-b26f-c421473c5f5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_10b564d3-8c66-40eb-b26f-c421473c5f5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_338f9e77-e937-451f-95ab-405a51525565" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_338f9e77-e937-451f-95ab-405a51525565" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_df9208ab-1a66-4c6a-a9a7-75fa80c535c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_df9208ab-1a66-4c6a-a9a7-75fa80c535c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued_f5f0f2c6-dc34-41c2-ae08-7b255bbb6318" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_PreferredStockSharesIssued_f5f0f2c6-dc34-41c2-ae08-7b255bbb6318" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_39e67ef4-f3fe-4cf8-afb8-a44cdeb6f494" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_39e67ef4-f3fe-4cf8-afb8-a44cdeb6f494" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_cd10887e-a62e-4560-9f32-591e80b12806" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_cd10887e-a62e-4560-9f32-591e80b12806" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_a4f1d311-fc21-41bb-9bb4-828d02f4ef52" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_a4f1d311-fc21-41bb-9bb4-828d02f4ef52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_f17c14cd-1b17-4d9f-b1bb-722dab471cc0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_CommonStockSharesIssued_f17c14cd-1b17-4d9f-b1bb-722dab471cc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_0e67a641-bdbd-4b5f-ae51-d3bb3fa433e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_fe94f755-0df0-4026-81ba-b64cc133ddb9" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_0e67a641-bdbd-4b5f-ae51-d3bb3fa433e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="efoi-20220930.xsd#CondensedConsolidatedStatementsofOperations"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_c92a904d-0155-48da-8077-8b9aa5a31ffe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_7e3499b9-578b-4a01-a3d4-2ac317a37474" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_c92a904d-0155-48da-8077-8b9aa5a31ffe" xlink:to="loc_us-gaap_Revenues_7e3499b9-578b-4a01-a3d4-2ac317a37474" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_108e24c5-e872-4102-ad28-56a84a716774" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_c92a904d-0155-48da-8077-8b9aa5a31ffe" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_108e24c5-e872-4102-ad28-56a84a716774" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_e37f1144-f88f-42e8-84ed-6b547c41c50d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_c92a904d-0155-48da-8077-8b9aa5a31ffe" xlink:to="loc_us-gaap_GrossProfit_e37f1144-f88f-42e8-84ed-6b547c41c50d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpensesAbstract_b5b2a0b3-a229-42e5-89db-66b8a63490ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpensesAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_c92a904d-0155-48da-8077-8b9aa5a31ffe" xlink:to="loc_us-gaap_OperatingExpensesAbstract_b5b2a0b3-a229-42e5-89db-66b8a63490ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_98c6c0e5-909b-4de6-b8f9-65d0d5c872ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_b5b2a0b3-a229-42e5-89db-66b8a63490ba" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_98c6c0e5-909b-4de6-b8f9-65d0d5c872ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_c11ba0c2-9711-4194-88b4-c16a7b4b0d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_b5b2a0b3-a229-42e5-89db-66b8a63490ba" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_c11ba0c2-9711-4194-88b4-c16a7b4b0d27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnDispositionOfAssets1_2e9e4cd8-67dc-4adc-9b88-453b50367fb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnDispositionOfAssets1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_b5b2a0b3-a229-42e5-89db-66b8a63490ba" xlink:to="loc_us-gaap_GainLossOnDispositionOfAssets1_2e9e4cd8-67dc-4adc-9b88-453b50367fb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCosts_0dcb9b87-a8e1-4f99-8c52-cb2951d0fe8d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCosts"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_b5b2a0b3-a229-42e5-89db-66b8a63490ba" xlink:to="loc_us-gaap_RestructuringCosts_0dcb9b87-a8e1-4f99-8c52-cb2951d0fe8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_22434bd0-45ec-4bf1-b758-34d069785760" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingExpenses"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_b5b2a0b3-a229-42e5-89db-66b8a63490ba" xlink:to="loc_us-gaap_OperatingExpenses_22434bd0-45ec-4bf1-b758-34d069785760" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_fefe6cb9-3638-4071-ac13-4311dc33b221" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_b5b2a0b3-a229-42e5-89db-66b8a63490ba" xlink:to="loc_us-gaap_OperatingIncomeLoss_fefe6cb9-3638-4071-ac13-4311dc33b221" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonoperatingIncomeExpenseAbstract_004566ca-4b0e-43e6-a15a-17db04e964b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpenseAbstract"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_c92a904d-0155-48da-8077-8b9aa5a31ffe" xlink:to="loc_us-gaap_NonoperatingIncomeExpenseAbstract_004566ca-4b0e-43e6-a15a-17db04e964b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_82981250-0941-4cb6-88ed-374290b472c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_004566ca-4b0e-43e6-a15a-17db04e964b9" xlink:to="loc_us-gaap_InterestExpense_82981250-0941-4cb6-88ed-374290b472c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_bb291be1-0cf3-47cd-8cde-3723d527f486" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_004566ca-4b0e-43e6-a15a-17db04e964b9" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_bb291be1-0cf3-47cd-8cde-3723d527f486" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncome_e73bf43f-2470-4962-a573-2272ef4b688c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncome"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_004566ca-4b0e-43e6-a15a-17db04e964b9" xlink:to="loc_us-gaap_OtherNonoperatingIncome_e73bf43f-2470-4962-a573-2272ef4b688c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingExpense_ec61ea4c-8c24-4c68-8c8a-1c354d5d6e29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_004566ca-4b0e-43e6-a15a-17db04e964b9" xlink:to="loc_us-gaap_OtherNonoperatingExpense_ec61ea4c-8c24-4c68-8c8a-1c354d5d6e29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_e52f2308-b279-4d5c-9497-b1c3913e02f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NonoperatingIncomeExpenseAbstract_004566ca-4b0e-43e6-a15a-17db04e964b9" xlink:to="loc_us-gaap_NetIncomeLoss_e52f2308-b279-4d5c-9497-b1c3913e02f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_3ff52310-65b2-42d5-9117-a669af884c14" xlink:href="efoi-20220930.xsd#efoi_EarningsPerShareBasicAndDilutedEPSAbstract"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_c92a904d-0155-48da-8077-8b9aa5a31ffe" xlink:to="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_3ff52310-65b2-42d5-9117-a669af884c14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_e90880d0-00ef-41b8-9595-563679e0abfd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_3ff52310-65b2-42d5-9117-a669af884c14" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_e90880d0-00ef-41b8-9595-563679e0abfd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_43379a54-e2da-459e-a299-e23004324f2c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_3ff52310-65b2-42d5-9117-a669af884c14" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_43379a54-e2da-459e-a299-e23004324f2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract_ff1606bf-c56b-46b1-8c43-4e09ec48f3ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_c92a904d-0155-48da-8077-8b9aa5a31ffe" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract_ff1606bf-c56b-46b1-8c43-4e09ec48f3ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ed1805f1-8f3f-42b0-b8dd-6bcf29920229" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract_ff1606bf-c56b-46b1-8c43-4e09ec48f3ab" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ed1805f1-8f3f-42b0-b8dd-6bcf29920229" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_b91fa12f-f549-4a76-b6e0-59e0c54dab1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract_ff1606bf-c56b-46b1-8c43-4e09ec48f3ab" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_b91fa12f-f549-4a76-b6e0-59e0c54dab1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity" xlink:type="simple" xlink:href="efoi-20220930.xsd#CondensedConsolidatedStatementsofChangesinStockholdersEquity"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_58359c81-e838-4d26-8ce0-4f93d65a63ce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_a6676667-3845-45b4-98c4-4ad8504c7d4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_58359c81-e838-4d26-8ce0-4f93d65a63ce" xlink:to="loc_us-gaap_StatementTable_a6676667-3845-45b4-98c4-4ad8504c7d4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_de214a61-3008-4839-b1d1-368104fd9293" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_a6676667-3845-45b4-98c4-4ad8504c7d4a" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_de214a61-3008-4839-b1d1-368104fd9293" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_de214a61-3008-4839-b1d1-368104fd9293" xlink:to="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_c68ade18-ee97-4783-8db6-638c0a4f0f0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_PreferredStockMember_c68ade18-ee97-4783-8db6-638c0a4f0f0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_76d2d60f-2959-46d7-ae2b-84f0c65f4524" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_CommonStockMember_76d2d60f-2959-46d7-ae2b-84f0c65f4524" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_e4fd1f17-86c3-45e7-b8d1-3690133fe480" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_e4fd1f17-86c3-45e7-b8d1-3690133fe480" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7333ee34-20c0-434c-9f90-f7759505311a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_7333ee34-20c0-434c-9f90-f7759505311a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_bbaa0208-3e3d-4645-9e4f-af7c1ed71423" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_4454aafe-5b71-46ed-93c2-697a8b8bf8a7" xlink:to="loc_us-gaap_RetainedEarningsMember_bbaa0208-3e3d-4645-9e4f-af7c1ed71423" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_aeea778f-aa19-4d65-b928-3c431a627b60" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_a6676667-3845-45b4-98c4-4ad8504c7d4a" xlink:to="loc_us-gaap_StatementLineItems_aeea778f-aa19-4d65-b928-3c431a627b60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_aeea778f-aa19-4d65-b928-3c431a627b60" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_78e779c5-f274-4f44-89a8-29c237c95436" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_SharesOutstanding_78e779c5-f274-4f44-89a8-29c237c95436" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_60b486d6-ddb7-4fb6-8779-6e730adf4cca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockholdersEquity_60b486d6-ddb7-4fb6-8779-6e730adf4cca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_7da2cd86-52bf-4802-92af-9a8514dec156" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_7da2cd86-52bf-4802-92af-9a8514dec156" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_63151392-05b3-4476-b0cb-da1968c7f4ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_63151392-05b3-4476-b0cb-da1968c7f4ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_ca56ca30-7aae-46d8-ad56-c4195a9b9495" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_ca56ca30-7aae-46d8-ad56-c4195a9b9495" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised_0845cd16-f10c-4a52-9c75-6573785681a1" xlink:href="efoi-20220930.xsd#efoi_StockIssuedDuringThePeriodSharesWarrantsExercised"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised_0845cd16-f10c-4a52-9c75-6573785681a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_e18ca185-8f6b-47d5-b45f-e0775f443bfe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_e18ca185-8f6b-47d5-b45f-e0775f443bfe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_5c3dc22d-9566-412c-9f64-873853584424" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_5c3dc22d-9566-412c-9f64-873853584424" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_f58882e1-19aa-4c88-aba2-832dcace74f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_f58882e1-19aa-4c88-aba2-832dcace74f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_be70f9af-49f0-4ce4-9e1e-4340169dd032" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_be70f9af-49f0-4ce4-9e1e-4340169dd032" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_2e6efade-e889-47c9-ba28-e974bd4160f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_2e6efade-e889-47c9-ba28-e974bd4160f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_86b5e398-8742-489f-b716-1502182d8457" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_86b5e398-8742-489f-b716-1502182d8457" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4cea1786-3b13-496f-957a-35d0b0d3305f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4cea1786-3b13-496f-957a-35d0b0d3305f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_6a3940c2-13b3-47a6-a5c7-19e9dbc2fee5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_NetIncomeLoss_6a3940c2-13b3-47a6-a5c7-19e9dbc2fee5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_b3ee5b23-e712-4652-b159-7e23927f2905" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_b3ee5b23-e712-4652-b159-7e23927f2905" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_e182718b-fb46-4a5d-bf74-78c9a14ab65e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_SharesOutstanding_e182718b-fb46-4a5d-bf74-78c9a14ab65e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_911c95b7-745e-4fd7-ab67-166fcff8878e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_c5428932-cae6-43ab-81be-041b61889ace" xlink:to="loc_us-gaap_StockholdersEquity_911c95b7-745e-4fd7-ab67-166fcff8878e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="efoi-20220930.xsd#CondensedConsolidatedStatementsofCashFlows"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_1567cfb1-ab00-4641-8b11-681a3ce4d406" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1567cfb1-ab00-4641-8b11-681a3ce4d406" xlink:to="loc_us-gaap_DebtInstrumentAxis_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_5dbb1f93-9287-45f2-9e72-231012973367" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_e2f98f1e-16fa-4fba-bac3-d63fb7e6356a" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_5dbb1f93-9287-45f2-9e72-231012973367" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2021StreetervilleNoteMember_6990a362-52a0-42b9-8efc-d36aa59a1674" xlink:href="efoi-20220930.xsd#efoi_A2021StreetervilleNoteMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_5dbb1f93-9287-45f2-9e72-231012973367" xlink:to="loc_efoi_A2021StreetervilleNoteMember_6990a362-52a0-42b9-8efc-d36aa59a1674" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022StreetervilleNoteMember_d534786b-7c5b-48eb-966a-63a44e67d60a" xlink:href="efoi-20220930.xsd#efoi_A2022StreetervilleNoteMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_5dbb1f93-9287-45f2-9e72-231012973367" xlink:to="loc_efoi_A2022StreetervilleNoteMember_d534786b-7c5b-48eb-966a-63a44e67d60a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_1f0afda6-33a5-4146-815f-cf2f3ac2ca39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_1567cfb1-ab00-4641-8b11-681a3ce4d406" xlink:to="loc_us-gaap_StatementLineItems_1f0afda6-33a5-4146-815f-cf2f3ac2ca39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1f0afda6-33a5-4146-815f-cf2f3ac2ca39" xlink:to="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_0a316d5c-daac-473f-929f-0118fda945fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:to="loc_us-gaap_NetIncomeLoss_0a316d5c-daac-473f-929f-0118fda945fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncome_39c0e1d1-bf44-4160-b844-65c95bbff50d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncashIncome"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_OtherNoncashIncome_39c0e1d1-bf44-4160-b844-65c95bbff50d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_31ada355-4921-455a-851d-1015ba77ec16" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_31ada355-4921-455a-851d-1015ba77ec16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_fc7c730a-387b-442b-9a11-45a3a52fa18f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_Depreciation_fc7c730a-387b-442b-9a11-45a3a52fa18f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_591fea97-040c-4b54-8a35-4788aaa241e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_ShareBasedCompensation_591fea97-040c-4b54-8a35-4788aaa241e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_70b0a4fa-4f4a-49f4-8702-3ce5e7d036dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_70b0a4fa-4f4a-49f4-8702-3ce5e7d036dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_e7dfaaac-d3e4-43a7-91ee-7f504a6727d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWriteDown"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_InventoryWriteDown_e7dfaaac-d3e4-43a7-91ee-7f504a6727d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_IncreaseDecreaseInProvisionForWarranties_22e0ab23-e90a-4589-9599-28f58347b07b" xlink:href="efoi-20220930.xsd#efoi_IncreaseDecreaseInProvisionForWarranties"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_efoi_IncreaseDecreaseInProvisionForWarranties_22e0ab23-e90a-4589-9599-28f58347b07b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDebtDiscountPremium_0301ba3a-08cc-4e69-a8d2-4205779d4239" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfDebtDiscountPremium"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_AmortizationOfDebtDiscountPremium_0301ba3a-08cc-4e69-a8d2-4205779d4239" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_f26beb7a-949d-4d04-b598-f3e9a4113cc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_f26beb7a-949d-4d04-b598-f3e9a4113cc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_f5be8110-cc4a-4d2a-aede-820a18180c0f" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_379e641c-97f7-4d92-9b52-f45a7d69182e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_379e641c-97f7-4d92-9b52-f45a7d69182e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_6b4ed8d1-c599-4515-99ca-3aec7a994db9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_6b4ed8d1-c599-4515-99ca-3aec7a994db9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_7f165525-2880-41a9-b4d6-75e17e1b250a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInDepositOtherAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_7f165525-2880-41a9-b4d6-75e17e1b250a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_6033c98b-5904-4df9-af68-4746bada7b9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_6033c98b-5904-4df9-af68-4746bada7b9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_f1ff69a5-b91f-4bc1-95fc-bfd64fab2da0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_f1ff69a5-b91f-4bc1-95fc-bfd64fab2da0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_65c8ed3d-8c65-46c0-b6a3-f8907e5eebde" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_65c8ed3d-8c65-46c0-b6a3-f8907e5eebde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_c53719d0-6925-41e6-b3c2-214920878f87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_c53719d0-6925-41e6-b3c2-214920878f87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_34222c7e-04b0-4aa2-b4e9-fd4cd1009e5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_dec826ac-9ffa-4360-b16f-ff766c142841" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_34222c7e-04b0-4aa2-b4e9-fd4cd1009e5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_a51a2b62-e6f7-418b-a9eb-b641a29d90c8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_f4e5bf70-ed4f-48e4-93f9-4d5633062e30" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_a51a2b62-e6f7-418b-a9eb-b641a29d90c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d31ae110-f571-468f-b34e-678bd4180630" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d31ae110-f571-468f-b34e-678bd4180630" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9e5c9f5c-1a40-452e-a5d9-07b6801838cc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d31ae110-f571-468f-b34e-678bd4180630" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_9e5c9f5c-1a40-452e-a5d9-07b6801838cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_95ef71fd-4dc9-406d-aa09-f94cfc0d6201" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_d31ae110-f571-468f-b34e-678bd4180630" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_95ef71fd-4dc9-406d-aa09-f94cfc0d6201" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_03b2fb2c-28c4-44ec-a76f-1814b053e28b" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants_03b2fb2c-28c4-44ec-a76f-1814b053e28b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_689472b8-c966-4ee1-8805-9aac3c34f8b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_689472b8-c966-4ee1-8805-9aac3c34f8b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_5f0e060e-2e78-44f9-a5cb-16011e5a1a35" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_5f0e060e-2e78-44f9-a5cb-16011e5a1a35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_306facf6-1bf8-436a-9cec-3a9d03adcafb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_306facf6-1bf8-436a-9cec-3a9d03adcafb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_5784ec37-7a98-490c-b3fa-3a1a0fce5b4a" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans_5784ec37-7a98-490c-b3fa-3a1a0fce5b4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_bb5a0610-7bdf-4b89-a713-631c83bfdda0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_bb5a0610-7bdf-4b89-a713-631c83bfdda0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromNotesPayable_263e1f21-2df8-45a4-b035-4008c48e52f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_ProceedsFromNotesPayable_263e1f21-2df8-45a4-b035-4008c48e52f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_69d4f125-e7da-4f98-b046-f0a492979ae5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_69d4f125-e7da-4f98-b046-f0a492979ae5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts_06c5b1c6-dea8-4226-87e5-543237d119bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_PaymentsOfFinancingCosts_06c5b1c6-dea8-4226-87e5-543237d119bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_d0a8b314-227e-4774-93dd-c86da2cfd814" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_d0a8b314-227e-4774-93dd-c86da2cfd814" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_016cd106-467d-45e2-a70e-f530d60e7586" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_93a0c1df-7feb-4938-b614-644cb29ea359" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_016cd106-467d-45e2-a70e-f530d60e7586" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_bc55737b-81e5-4373-a19f-fe34c0cc1c7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_bc55737b-81e5-4373-a19f-fe34c0cc1c7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_4d7dae0d-22a4-4115-beca-92b0f8591f87" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_4d7dae0d-22a4-4115-beca-92b0f8591f87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_38394684-d486-4da5-8652-4566907ba211" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_c47c4675-9f82-4d7e-a415-0633b9dd5e28" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_38394684-d486-4da5-8652-4566907ba211" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/NatureofOperations" xlink:type="simple" xlink:href="efoi-20220930.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_c3c98f0f-7b4d-4bd8-9630-66260e8a7b45" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NatureOfOperations_bb59fe6a-98e3-4429-ac27-6a5ab8713fb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NatureOfOperations"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_c3c98f0f-7b4d-4bd8-9630-66260e8a7b45" xlink:to="loc_us-gaap_NatureOfOperations_bb59fe6a-98e3-4429-ac27-6a5ab8713fb5" 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-20220930.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_e80f739d-d381-4ced-abaf-1a2ab4083d7f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_04cf2cbc-4dd4-40b6-bd7f-ffe2082e5d94" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_e80f739d-d381-4ced-abaf-1a2ab4083d7f" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_04cf2cbc-4dd4-40b6-bd7f-ffe2082e5d94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Restructuring" xlink:type="simple" xlink:href="efoi-20220930.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_65db4195-c036-479d-bd7b-460f6d086233" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_7483378c-99e7-4654-8754-cf720dc54b96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_65db4195-c036-479d-bd7b-460f6d086233" xlink:to="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_7483378c-99e7-4654-8754-cf720dc54b96" 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-20220930.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_59ab533c-db78-4b90-a212-3244a39fc27a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_a09d2bda-571c-4cd6-a382-819b97d444db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_59ab533c-db78-4b90-a212-3244a39fc27a" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_a09d2bda-571c-4cd6-a382-819b97d444db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipment" xlink:type="simple" xlink:href="efoi-20220930.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_219f26fc-cab5-40d6-a105-4ce382e67938" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3cf80329-3cca-4904-a670-ba52a3db10e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_219f26fc-cab5-40d6-a105-4ce382e67938" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_3cf80329-3cca-4904-a670-ba52a3db10e6" 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-20220930.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_8703a64f-7ad9-4d23-b975-d245e2181aa3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeasesTextBlock_242a7f55-818b-44ad-9bc1-afd5ed731a16" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_8703a64f-7ad9-4d23-b975-d245e2181aa3" xlink:to="loc_us-gaap_LesseeFinanceLeasesTextBlock_242a7f55-818b-44ad-9bc1-afd5ed731a16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_43aa8ef3-2073-4c43-99a2-6b4690ac29cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_8703a64f-7ad9-4d23-b975-d245e2181aa3" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_43aa8ef3-2073-4c43-99a2-6b4690ac29cd" 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-20220930.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_f4b7dae7-be62-425a-a9e8-480125e06be3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_1080b5ad-1ca1-4e63-ad7a-76399913da2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_f4b7dae7-be62-425a-a9e8-480125e06be3" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_1080b5ad-1ca1-4e63-ad7a-76399913da2b" 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-20220930.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_50c88839-1b2d-4601-83e4-94186a14aaa4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_e41cc455-9948-466c-810d-0fc68787e7b9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_50c88839-1b2d-4601-83e4-94186a14aaa4" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_e41cc455-9948-466c-810d-0fc68787e7b9" 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-20220930.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_EquityAbstract_51cbf645-7119-412d-a758-7af017f23af4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_667ccba8-1eef-4069-85ad-fc5ad7be0763" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_51cbf645-7119-412d-a758-7af017f23af4" xlink:to="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_667ccba8-1eef-4069-85ad-fc5ad7be0763" 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-20220930.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_50aeed9f-cf0d-4d5c-bd36-7ed91a06a3ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_f4f8d451-8e1f-40d0-8401-b4f57c4ba414" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_50aeed9f-cf0d-4d5c-bd36-7ed91a06a3ea" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_f4f8d451-8e1f-40d0-8401-b4f57c4ba414" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/OtherIncome" xlink:type="simple" xlink:href="efoi-20220930.xsd#OtherIncome"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/OtherIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndExpensesAbstract_72de40af-c5dc-4814-beb9-ec740845c2ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndExpensesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock_ac372af0-9fee-4a03-9e08-eda2dd7a4566" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract_72de40af-c5dc-4814-beb9-ec740845c2ab" xlink:to="loc_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock_ac372af0-9fee-4a03-9e08-eda2dd7a4566" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RelatedPartyTransaction" xlink:type="simple" xlink:href="efoi-20220930.xsd#RelatedPartyTransaction"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/RelatedPartyTransaction" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_511264d2-88c1-4953-8bec-5d411e2257e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_af660c37-868a-4023-8421-ebf40ba394a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_511264d2-88c1-4953-8bec-5d411e2257e7" xlink:to="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_af660c37-868a-4023-8421-ebf40ba394a2" 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-20220930.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_374cae42-881c-4cdd-bce2-3278923e3d2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_a99d35a1-2089-4c9b-9305-bc45376de0e9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_374cae42-881c-4cdd-bce2-3278923e3d2a" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_a99d35a1-2089-4c9b-9305-bc45376de0e9" 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-20220930.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_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_809631eb-31ad-4bed-859f-522442ee1638" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_809631eb-31ad-4bed-859f-522442ee1638" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates_bf66c2c6-e0a4-440e-87f9-37d7ea0f07af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UseOfEstimates"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_UseOfEstimates_bf66c2c6-e0a4-440e-87f9-37d7ea0f07af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk_e2e0a0dd-e932-44b4-975b-5d4991c23a3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_ConcentrationRiskCreditRisk_e2e0a0dd-e932-44b4-975b-5d4991c23a3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1e50af75-6196-4905-9808-0d1fa0ee46f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1e50af75-6196-4905-9808-0d1fa0ee46f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock_5f97d8d8-10e1-4e8d-8d2d-e7ddc4658e85" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueRecognitionPolicyTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_RevenueRecognitionPolicyTextBlock_5f97d8d8-10e1-4e8d-8d2d-e7ddc4658e85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy_bebbeb7a-199e-4a33-a80a-7857df8d278a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy_bebbeb7a-199e-4a33-a80a-7857df8d278a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock_d6565946-0d59-4f72-947c-07807d99c42c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerSharePolicyTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_EarningsPerSharePolicyTextBlock_d6565946-0d59-4f72-947c-07807d99c42c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyPolicy_fa431cf2-ab42-4382-a33b-9be8440f945e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandardProductWarrantyPolicy"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_StandardProductWarrantyPolicy_fa431cf2-ab42-4382-a33b-9be8440f945e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_d2cf16d3-8cae-4e2c-82d1-386f69145040" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bcd9e3e8-4508-4f59-b0fb-3dbb2aaa58b4" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_d2cf16d3-8cae-4e2c-82d1-386f69145040" 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-20220930.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_ce5507f5-b432-4d8e-a0c7-cee32f82cea8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_114d11d1-dca2-46a0-83f8-0d3627dbbcdc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_ce5507f5-b432-4d8e-a0c7-cee32f82cea8" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_114d11d1-dca2-46a0-83f8-0d3627dbbcdc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_523e916a-af40-4f11-ae6c-30ee3daf9266" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_ce5507f5-b432-4d8e-a0c7-cee32f82cea8" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_523e916a-af40-4f11-ae6c-30ee3daf9266" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_d54a2447-2dc6-461a-8a16-fc80f3904ec8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_ce5507f5-b432-4d8e-a0c7-cee32f82cea8" xlink:to="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_d54a2447-2dc6-461a-8a16-fc80f3904ec8" 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-20220930.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_41e5c8e4-c5d5-4ba8-b7bd-d53317c96494" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_8b8f5e9d-4383-4708-99b5-89a0a17f3fcc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_41e5c8e4-c5d5-4ba8-b7bd-d53317c96494" xlink:to="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_8b8f5e9d-4383-4708-99b5-89a0a17f3fcc" 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-20220930.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_a655b0e1-f2bd-49ee-8340-c35dfc97a187" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_fe5130e1-86aa-4ddf-b1c2-1fdf53ec3d9b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_a655b0e1-f2bd-49ee-8340-c35dfc97a187" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_fe5130e1-86aa-4ddf-b1c2-1fdf53ec3d9b" 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-20220930.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_02edbe34-af05-49be-84ff-972584c672f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_f559800e-ff0e-4514-8143-c1f1376b050b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_02edbe34-af05-49be-84ff-972584c672f9" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_f559800e-ff0e-4514-8143-c1f1376b050b" 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-20220930.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_e2daaa8f-77d3-4acd-8159-e218a3b62fab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_04e2dab3-95e0-4878-8515-921c1a54ae0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e2daaa8f-77d3-4acd-8159-e218a3b62fab" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_04e2dab3-95e0-4878-8515-921c1a54ae0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock_51e1be46-897a-4856-899f-3a3f5b2810db" xlink:href="efoi-20220930.xsd#efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e2daaa8f-77d3-4acd-8159-e218a3b62fab" xlink:to="loc_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock_51e1be46-897a-4856-899f-3a3f5b2810db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_e81098e0-a53d-4931-9c2e-1a66718c50db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e2daaa8f-77d3-4acd-8159-e218a3b62fab" xlink:to="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_e81098e0-a53d-4931-9c2e-1a66718c50db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_216ed636-4609-4400-b367-dba0f45c8a20" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e2daaa8f-77d3-4acd-8159-e218a3b62fab" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_216ed636-4609-4400-b367-dba0f45c8a20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_a581c8a0-5756-490e-ad5f-d3cf49cd0d5a" xlink:href="efoi-20220930.xsd#efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e2daaa8f-77d3-4acd-8159-e218a3b62fab" xlink:to="loc_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_a581c8a0-5756-490e-ad5f-d3cf49cd0d5a" 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-20220930.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_EquityAbstract_0d241c5a-511a-4350-bd6e-32f87cb43545" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_a8873fe0-5560-42ce-a368-7f4c1d7e74f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_0d241c5a-511a-4350-bd6e-32f87cb43545" xlink:to="loc_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_a8873fe0-5560-42ce-a368-7f4c1d7e74f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_499e8ab2-f9da-4c58-8692-cde76f7bd498" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_0d241c5a-511a-4350-bd6e-32f87cb43545" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_499e8ab2-f9da-4c58-8692-cde76f7bd498" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_20051746-c140-4da2-8537-a2059263b2a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_0d241c5a-511a-4350-bd6e-32f87cb43545" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_20051746-c140-4da2-8537-a2059263b2a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_3a0991c3-aa61-4ca1-ba8a-56575074e414" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_0d241c5a-511a-4350-bd6e-32f87cb43545" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_3a0991c3-aa61-4ca1-ba8a-56575074e414" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_581cdba5-e531-4f90-a6db-fae18a9b009d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_0d241c5a-511a-4350-bd6e-32f87cb43545" xlink:to="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_581cdba5-e531-4f90-a6db-fae18a9b009d" 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-20220930.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_9271703b-8f31-49a0-aa26-d4048c93d731" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_9271703b-8f31-49a0-aa26-d4048c93d731" xlink:to="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_srt_MajorCustomersAxis_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_e9548542-e7b5-4dfb-855d-94d0f5e4f2b9" xlink:to="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember_e636baad-616b-488b-b501-6d31fbca0222" xlink:href="efoi-20220930.xsd#efoi_RegionalCommercialLightingRetrofitCompanyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember_e636baad-616b-488b-b501-6d31fbca0222" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheU.S.NavyMember_5459186c-b361-4861-be7e-81282b42d25f" xlink:href="efoi-20220930.xsd#efoi_DistributorToTheU.S.NavyMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_DistributorToTheU.S.NavyMember_5459186c-b361-4861-be7e-81282b42d25f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ShipbuilderForUSNavyMember_27802c1b-236f-4c98-a60a-45020f8f4a18" xlink:href="efoi-20220930.xsd#efoi_ShipbuilderForUSNavyMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_ShipbuilderForUSNavyMember_27802c1b-236f-4c98-a60a-45020f8f4a18" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_99db2bbc-cb84-4392-9bf5-206033da947b" xlink:href="efoi-20220930.xsd#efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_99db2bbc-cb84-4392-9bf5-206033da947b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialBuildingSystemsProviderMember_d3b4eb8c-c951-4318-a622-8d72bd07db0b" xlink:href="efoi-20220930.xsd#efoi_CommercialBuildingSystemsProviderMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_CommercialBuildingSystemsProviderMember_d3b4eb8c-c951-4318-a622-8d72bd07db0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_USNavyMechanicalContractorMember_802d3175-eb5a-4543-95ee-86b318f3bdbc" xlink:href="efoi-20220930.xsd#efoi_USNavyMechanicalContractorMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_USNavyMechanicalContractorMember_802d3175-eb5a-4543-95ee-86b318f3bdbc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheUSDepartmentOfDefenseMember_99d4fa20-9ee1-491a-adaf-ee45c4783377" xlink:href="efoi-20220930.xsd#efoi_DistributorToTheUSDepartmentOfDefenseMember"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_afca48dd-f399-4876-b891-f9465ff5a919" xlink:to="loc_efoi_DistributorToTheUSDepartmentOfDefenseMember_99d4fa20-9ee1-491a-adaf-ee45c4783377" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_11a8e5ab-4b3b-4669-ae9c-fd450a3f3e8f" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember_1f40b585-33f4-4741-abaa-c7a81db7dfbf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:to="loc_us-gaap_SalesRevenueNetMember_1f40b585-33f4-4741-abaa-c7a81db7dfbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_ccf15cd5-7bb1-451a-9754-8677439c93f1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:to="loc_us-gaap_AccountsReceivableMember_ccf15cd5-7bb1-451a-9754-8677439c93f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_TotalExpendituresMember_c1196d79-6c0e-4020-8d9c-07d1a7c43373" xlink:href="efoi-20220930.xsd#efoi_TotalExpendituresMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:to="loc_efoi_TotalExpendituresMember_c1196d79-6c0e-4020-8d9c-07d1a7c43373" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableMember_ba1e48af-4a83-4fa3-b8f6-ce87867d9063" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_af80c11a-4c5b-4dee-be52-05b5c38634ac" xlink:to="loc_us-gaap_AccountsPayableMember_ba1e48af-4a83-4fa3-b8f6-ce87867d9063" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_b97974ed-1684-468b-a99e-4b2707e6e5d1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_b97974ed-1684-468b-a99e-4b2707e6e5d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_bcd7fc0b-c944-414c-b5ff-6cd750f4bc79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_b97974ed-1684-468b-a99e-4b2707e6e5d1" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_bcd7fc0b-c944-414c-b5ff-6cd750f4bc79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_0594ae08-d831-45d1-b362-497a8c088c9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_bcd7fc0b-c944-414c-b5ff-6cd750f4bc79" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_0594ae08-d831-45d1-b362-497a8c088c9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplierConcentrationRiskMember_b2a3e57d-1300-4e20-b8a2-ff6a7cafadf5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SupplierConcentrationRiskMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_bcd7fc0b-c944-414c-b5ff-6cd750f4bc79" xlink:to="loc_us-gaap_SupplierConcentrationRiskMember_b2a3e57d-1300-4e20-b8a2-ff6a7cafadf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_188e0292-0a45-4f36-87dc-263c57c17a06" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_188e0292-0a45-4f36-87dc-263c57c17a06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_a8f0f62a-350f-4327-9197-a2a43c79d1a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_188e0292-0a45-4f36-87dc-263c57c17a06" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_a8f0f62a-350f-4327-9197-a2a43c79d1a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OffshoreSupplierOneMember_7f69a1d0-0246-47da-84be-2ef3e1690f28" xlink:href="efoi-20220930.xsd#efoi_OffshoreSupplierOneMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_a8f0f62a-350f-4327-9197-a2a43c79d1a6" xlink:to="loc_efoi_OffshoreSupplierOneMember_7f69a1d0-0246-47da-84be-2ef3e1690f28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OffshoreSupplierMember_28663e33-95ed-4f21-814b-bc53c12ed6b8" xlink:href="efoi-20220930.xsd#efoi_OffshoreSupplierMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_a8f0f62a-350f-4327-9197-a2a43c79d1a6" xlink:to="loc_efoi_OffshoreSupplierMember_28663e33-95ed-4f21-814b-bc53c12ed6b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_9e00d75d-d4a3-4698-a0cf-c520d4e5fb69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e599acb3-2cbd-4ec8-8e40-c5f1b6538a49" xlink:to="loc_us-gaap_ConcentrationRiskLineItems_9e00d75d-d4a3-4698-a0cf-c520d4e5fb69" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_aacdcc0e-7d16-48c2-80eb-57b2a38f322d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_9e00d75d-d4a3-4698-a0cf-c520d4e5fb69" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_aacdcc0e-7d16-48c2-80eb-57b2a38f322d" 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-20220930.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_bb1c4fca-ec17-4384-9839-7f8d8da1f12d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_4bb28762-0ab7-450a-bab8-6e1b0ae0655c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_bb1c4fca-ec17-4384-9839-7f8d8da1f12d" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_4bb28762-0ab7-450a-bab8-6e1b0ae0655c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_52b89c3c-d52e-4881-8c2f-ba130a45e77f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_4bb28762-0ab7-450a-bab8-6e1b0ae0655c" xlink:to="loc_srt_ProductOrServiceAxis_52b89c3c-d52e-4881-8c2f-ba130a45e77f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_298c2547-dfe5-4e55-a525-b68339bc29ee" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_52b89c3c-d52e-4881-8c2f-ba130a45e77f" xlink:to="loc_srt_ProductsAndServicesDomain_298c2547-dfe5-4e55-a525-b68339bc29ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialProductsMember_fdf5eb6c-c0c3-4da2-a0a4-cc843c0c12bc" xlink:href="efoi-20220930.xsd#efoi_CommercialProductsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_298c2547-dfe5-4e55-a525-b68339bc29ee" xlink:to="loc_efoi_CommercialProductsMember_fdf5eb6c-c0c3-4da2-a0a4-cc843c0c12bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_MMMProductsMember_df4d7fac-2cda-443a-a62a-b6772bd2497a" xlink:href="efoi-20220930.xsd#efoi_MMMProductsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_298c2547-dfe5-4e55-a525-b68339bc29ee" xlink:to="loc_efoi_MMMProductsMember_df4d7fac-2cda-443a-a62a-b6772bd2497a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4cc9b0da-86ef-43b9-887c-c0681ef3481b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_4bb28762-0ab7-450a-bab8-6e1b0ae0655c" xlink:to="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4cc9b0da-86ef-43b9-887c-c0681ef3481b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_57279ccc-df02-4a03-b8ba-fd2839da3ff5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Revenues"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4cc9b0da-86ef-43b9-887c-c0681ef3481b" xlink:to="loc_us-gaap_Revenues_57279ccc-df02-4a03-b8ba-fd2839da3ff5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_8de4e161-e066-4542-84d7-30bb9d7ee805" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_8de4e161-e066-4542-84d7-30bb9d7ee805" xlink:to="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_f1ac335e-dcba-4033-9d81-6e21e7b9fff2" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:to="loc_srt_StatementGeographicalAxis_f1ac335e-dcba-4033-9d81-6e21e7b9fff2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_c7d9f725-29f6-49ff-97aa-a8ae8ce9182b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_f1ac335e-dcba-4033-9d81-6e21e7b9fff2" xlink:to="loc_srt_SegmentGeographicalDomain_c7d9f725-29f6-49ff-97aa-a8ae8ce9182b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember_aaf4c7f0-a648-4d59-a292-db9c71cfc0b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_c7d9f725-29f6-49ff-97aa-a8ae8ce9182b" xlink:to="loc_us-gaap_NonUsMember_aaf4c7f0-a648-4d59-a292-db9c71cfc0b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_3c4e27d5-22dc-4c16-85c2-10544fe9287b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_3c4e27d5-22dc-4c16-85c2-10544fe9287b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_e65e8ca5-e0f9-4484-ab3f-a9c25894131d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_3c4e27d5-22dc-4c16-85c2-10544fe9287b" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_e65e8ca5-e0f9-4484-ab3f-a9c25894131d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember_0f4d7599-415b-4966-ba48-49feb18615d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_e65e8ca5-e0f9-4484-ab3f-a9c25894131d" xlink:to="loc_us-gaap_SalesRevenueNetMember_0f4d7599-415b-4966-ba48-49feb18615d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_8511929b-315a-4899-8873-499679cdffb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_8511929b-315a-4899-8873-499679cdffb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_d95d17ca-300a-4df8-98c6-3711251a1e22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_8511929b-315a-4899-8873-499679cdffb1" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_d95d17ca-300a-4df8-98c6-3711251a1e22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_1e19ef7f-0a2f-4ce6-91e2-fe8a3fcea3f0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_d95d17ca-300a-4df8-98c6-3711251a1e22" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_1e19ef7f-0a2f-4ce6-91e2-fe8a3fcea3f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_ac574fc5-622a-4b17-aea4-62226c40f60a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_9aad2e42-8fab-426a-b580-d1ab33f32c9b" xlink:to="loc_us-gaap_ConcentrationRiskLineItems_ac574fc5-622a-4b17-aea4-62226c40f60a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_75d8ae71-5c9d-4f47-8daa-472521f86bf6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_ac574fc5-622a-4b17-aea4-62226c40f60a" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_75d8ae71-5c9d-4f47-8daa-472521f86bf6" 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-20220930.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_6f476e94-8fe1-4395-81c1-4a3cd8433864" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_20152a44-a90d-494e-8650-13abfc190f7a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_6f476e94-8fe1-4395-81c1-4a3cd8433864" xlink:to="loc_us-gaap_EarningsPerShareAbstract_20152a44-a90d-494e-8650-13abfc190f7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_366ac3eb-2d30-4188-8bf5-bc4e3321a0cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_20152a44-a90d-494e-8650-13abfc190f7a" xlink:to="loc_us-gaap_NetIncomeLoss_366ac3eb-2d30-4188-8bf5-bc4e3321a0cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_a6038a3a-acd5-49c6-939c-fb23644e3b88" xlink:href="efoi-20220930.xsd#efoi_EarningsPerShareBasicAndDilutedEPSAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_6f476e94-8fe1-4395-81c1-4a3cd8433864" xlink:to="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_a6038a3a-acd5-49c6-939c-fb23644e3b88" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ebe77cd9-32f6-4766-8e7d-735d97dfd26f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_a6038a3a-acd5-49c6-939c-fb23644e3b88" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ebe77cd9-32f6-4766-8e7d-735d97dfd26f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_24cb95a9-2762-42de-8106-d724cbb36cab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_EarningsPerShareBasicAndDilutedEPSAbstract_a6038a3a-acd5-49c6-939c-fb23644e3b88" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_24cb95a9-2762-42de-8106-d724cbb36cab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_d5946330-1757-4802-b6af-53c48d4227cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityNoteStockSplitConversionRatio1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_6f476e94-8fe1-4395-81c1-4a3cd8433864" xlink:to="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_d5946330-1757-4802-b6af-53c48d4227cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="simple" xlink:href="efoi-20220930.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_79315143-1eb8-46b7-a8e0-e44c12101f7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_4c216178-8725-4941-8f77-5ef0e3c96b5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_79315143-1eb8-46b7-a8e0-e44c12101f7e" xlink:to="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_4c216178-8725-4941-8f77-5ef0e3c96b5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_7fa804ab-54a6-4af5-83a2-d7c21f7151e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_4c216178-8725-4941-8f77-5ef0e3c96b5d" xlink:to="loc_us-gaap_AwardTypeAxis_7fa804ab-54a6-4af5-83a2-d7c21f7151e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_7fa804ab-54a6-4af5-83a2-d7c21f7151e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_61ea54e6-54d9-4c9d-90e6-ecf589d46980" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:to="loc_us-gaap_WarrantMember_61ea54e6-54d9-4c9d-90e6-ecf589d46980" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_1b3f869a-4241-4b49-91a0-e83bf4a8f4f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_1b3f869a-4241-4b49-91a0-e83bf4a8f4f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockOptionMember_7ef54188-efcd-48ad-899f-b7a2b39a58e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockOptionMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_aceb8a33-58d6-4463-a549-ff2a974e1838" xlink:to="loc_us-gaap_StockOptionMember_7ef54188-efcd-48ad-899f-b7a2b39a58e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_d8ea6480-5ade-414a-a1da-ff2649cea6fe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_4c216178-8725-4941-8f77-5ef0e3c96b5d" xlink:to="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_d8ea6480-5ade-414a-a1da-ff2649cea6fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_e503416b-ab45-4d98-8b0e-c52b454debc2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_d8ea6480-5ade-414a-a1da-ff2649cea6fe" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_e503416b-ab45-4d98-8b0e-c52b454debc2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="simple" xlink:href="efoi-20220930.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_6f078b4e-5cfc-4cad-88cd-ec17b920b0fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyLiabilityTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_6f078b4e-5cfc-4cad-88cd-ec17b920b0fc" xlink:to="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_7bd139b2-19f8-403b-a29a-423f586a457a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:to="loc_srt_RangeAxis_7bd139b2-19f8-403b-a29a-423f586a457a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_86e12ea7-22cf-4840-9ebc-1c28ab77cead" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_7bd139b2-19f8-403b-a29a-423f586a457a" xlink:to="loc_srt_RangeMember_86e12ea7-22cf-4840-9ebc-1c28ab77cead" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_f427a166-999b-4786-af75-b7a05b33c9c0" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_86e12ea7-22cf-4840-9ebc-1c28ab77cead" xlink:to="loc_srt_MinimumMember_f427a166-999b-4786-af75-b7a05b33c9c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_b0aa7fec-35da-408f-a445-0516383ae471" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_86e12ea7-22cf-4840-9ebc-1c28ab77cead" xlink:to="loc_srt_MaximumMember_b0aa7fec-35da-408f-a445-0516383ae471" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_9f7d3589-d521-498c-8396-cda71adab242" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:to="loc_srt_ProductOrServiceAxis_9f7d3589-d521-498c-8396-cda71adab242" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_adb6daa8-20ae-4e6e-9901-8ab77e2e18fe" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_9f7d3589-d521-498c-8396-cda71adab242" xlink:to="loc_srt_ProductsAndServicesDomain_adb6daa8-20ae-4e6e-9901-8ab77e2e18fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialProductsMember_4d187aa2-04b4-4639-b7fa-e4439f6c62b1" xlink:href="efoi-20220930.xsd#efoi_CommercialProductsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_adb6daa8-20ae-4e6e-9901-8ab77e2e18fe" xlink:to="loc_efoi_CommercialProductsMember_4d187aa2-04b4-4639-b7fa-e4439f6c62b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_MMMLEDProductsMember_a0c2cb83-0a15-4aad-88e5-65645b3ac0bb" xlink:href="efoi-20220930.xsd#efoi_MMMLEDProductsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_adb6daa8-20ae-4e6e-9901-8ab77e2e18fe" xlink:to="loc_efoi_MMMLEDProductsMember_a0c2cb83-0a15-4aad-88e5-65645b3ac0bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityLineItems_bb1a0a6e-5b42-4913-b6db-1493fdd5663f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyLiabilityLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_cd240f79-a47b-44fb-88a0-f79932177e5f" xlink:to="loc_us-gaap_ProductWarrantyLiabilityLineItems_bb1a0a6e-5b42-4913-b6db-1493fdd5663f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyNumberofYears_3222b987-b016-4497-824f-b54362b3cea6" xlink:href="efoi-20220930.xsd#efoi_StandardProductWarrantyNumberofYears"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantyLiabilityLineItems_bb1a0a6e-5b42-4913-b6db-1493fdd5663f" xlink:to="loc_efoi_StandardProductWarrantyNumberofYears_3222b987-b016-4497-824f-b54362b3cea6" 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-20220930.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_9f8c1af1-98b2-4ce0-8dd4-1311973a3d27" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_693eeecd-4fc9-4050-864b-230a6dcae4d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_9f8c1af1-98b2-4ce0-8dd4-1311973a3d27" xlink:to="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_693eeecd-4fc9-4050-864b-230a6dcae4d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_21554bca-d193-4db4-92a1-b6122698e7b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_693eeecd-4fc9-4050-864b-230a6dcae4d6" xlink:to="loc_us-gaap_ProductWarrantyAccrual_21554bca-d193-4db4-92a1-b6122698e7b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements_461e8a6d-0119-4887-bee7-411880deb1f5" xlink:href="efoi-20220930.xsd#efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_693eeecd-4fc9-4050-864b-230a6dcae4d6" xlink:to="loc_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements_461e8a6d-0119-4887-bee7-411880deb1f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_7bd528ab-4fee-4616-860e-a4d91cb9e720" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_693eeecd-4fc9-4050-864b-230a6dcae4d6" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_7bd528ab-4fee-4616-860e-a4d91cb9e720" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements_9ad30ca0-631f-45cf-9fae-f09d9d47c971" xlink:href="efoi-20220930.xsd#efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_693eeecd-4fc9-4050-864b-230a6dcae4d6" xlink:to="loc_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements_9ad30ca0-631f-45cf-9fae-f09d9d47c971" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_bca2f8cf-e6fd-4913-a15a-d9af0bdc8221" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_693eeecd-4fc9-4050-864b-230a6dcae4d6" xlink:to="loc_us-gaap_ProductWarrantyAccrual_bca2f8cf-e6fd-4913-a15a-d9af0bdc8221" 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-20220930.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_33ea549f-3527-42d9-83d2-d4cc0d277a51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_33ea549f-3527-42d9-83d2-d4cc0d277a51" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_dd32f028-b881-4a58-b532-3d0b6a944708" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_dd32f028-b881-4a58-b532-3d0b6a944708" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_dd32f028-b881-4a58-b532-3d0b6a944708" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_June2022PrivatePlacementMember_fb8e66ca-1df1-492c-8436-90ba17264c30" xlink:href="efoi-20220930.xsd#efoi_June2022PrivatePlacementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_June2022PrivatePlacementMember_fb8e66ca-1df1-492c-8436-90ba17264c30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_December2021PrivatePlacementMember_af432ff3-dcef-4c8c-8e1a-5e5634ffd711" xlink:href="efoi-20220930.xsd#efoi_December2021PrivatePlacementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_December2021PrivatePlacementMember_af432ff3-dcef-4c8c-8e1a-5e5634ffd711" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_cec43acf-5356-4be1-bd17-ed96972a461a" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_InstitutionalInvestorMember_cec43acf-5356-4be1-bd17-ed96972a461a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020InstitutionalInvestorMember_9a5337fc-93b4-4c78-96cf-e0134abd411e" xlink:href="efoi-20220930.xsd#efoi_January2020InstitutionalInvestorMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_January2020InstitutionalInvestorMember_9a5337fc-93b4-4c78-96cf-e0134abd411e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingPrivatePlacementMember_0c15f52e-43be-441f-a7d0-70c40b8e9342" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingPrivatePlacementMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_January2020EquityOfferingPrivatePlacementMember_0c15f52e-43be-441f-a7d0-70c40b8e9342" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingMember_de3333f8-9dc9-49e9-a8be-0feb641690d8" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_f7edf043-e491-470f-b83b-35067c5df609" xlink:to="loc_efoi_January2020EquityOfferingMember_de3333f8-9dc9-49e9-a8be-0feb641690d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightAxis_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:to="loc_us-gaap_ClassOfWarrantOrRightAxis_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightDomain_acb5fe0c-371f-4c7d-b7aa-841c40c47bf4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfWarrantOrRightAxis_9d3c6c5c-4e20-426c-9f78-c7a79935d8f4" xlink:to="loc_us-gaap_ClassOfWarrantOrRightDomain_acb5fe0c-371f-4c7d-b7aa-841c40c47bf4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PreFundedWarrantsMember_90cf4342-5c16-4f7b-8a71-c522481a03cf" xlink:href="efoi-20220930.xsd#efoi_PreFundedWarrantsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain_acb5fe0c-371f-4c7d-b7aa-841c40c47bf4" xlink:to="loc_efoi_PreFundedWarrantsMember_90cf4342-5c16-4f7b-8a71-c522481a03cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_8d404b34-28da-4326-971a-e54a96714bb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain_acb5fe0c-371f-4c7d-b7aa-841c40c47bf4" xlink:to="loc_us-gaap_WarrantMember_8d404b34-28da-4326-971a-e54a96714bb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_15781eea-027a-4646-9cc6-3d3177529958" xlink:to="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_9741141c-2399-4a69-bb81-fd83917d422b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_9741141c-2399-4a69-bb81-fd83917d422b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_088b8fc9-cf3c-4d46-a8ec-24443f98c13c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_088b8fc9-cf3c-4d46-a8ec-24443f98c13c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_760b44c3-3405-4738-a184-426176df8b09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_760b44c3-3405-4738-a184-426176df8b09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_f07dc728-7d43-4929-87e7-6cb556e07455" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_f07dc728-7d43-4929-87e7-6cb556e07455" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_49bdbde5-ac27-44f6-b4ca-87c78ed2803f" xlink:href="efoi-20220930.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_49bdbde5-ac27-44f6-b4ca-87c78ed2803f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3de3ea41-2eb1-4820-8471-aac63fd8b90b" xlink:href="efoi-20220930.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3de3ea41-2eb1-4820-8471-aac63fd8b90b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_8face694-6b4a-4891-8526-5df6f6702491" xlink:href="efoi-20220930.xsd#efoi_PaymentsForClearingFees"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_PaymentsForClearingFees_8face694-6b4a-4891-8526-5df6f6702491" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_0fa63f27-401a-4e4e-b1f6-b1b830d6464c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_0fa63f27-401a-4e4e-b1f6-b1b830d6464c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_eb173918-4e5a-4796-9fc8-eb730d2afb56" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_eb173918-4e5a-4796-9fc8-eb730d2afb56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_46d52d85-2426-4d01-8748-68d245441f9c" xlink:href="efoi-20220930.xsd#efoi_EstimatedProceedsFromIssuanceOfWarrants"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_46d52d85-2426-4d01-8748-68d245441f9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_e60536ef-6233-4300-8494-bde82dc55a29" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_e60536ef-6233-4300-8494-bde82dc55a29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_428f4224-2b30-44a6-b090-aa3a6c0d616d" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_428f4224-2b30-44a6-b090-aa3a6c0d616d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_4654c3ef-5708-453a-beca-22fa980e3285" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_4654c3ef-5708-453a-beca-22fa980e3285" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_b16aed15-c1aa-490d-b979-b31718d3228f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_20ceb4fd-6c9e-4e21-8d37-bbf7d3cfa586" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_b16aed15-c1aa-490d-b979-b31718d3228f" 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-20220930.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_2b80415b-14fc-4361-aabd-83cf8ebafa92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_138b9d23-6aa9-4374-986d-59f53ffe162a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_2b80415b-14fc-4361-aabd-83cf8ebafa92" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_138b9d23-6aa9-4374-986d-59f53ffe162a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_e10d337c-b9af-4f7b-ae6d-2701cccf70b1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_138b9d23-6aa9-4374-986d-59f53ffe162a" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_e10d337c-b9af-4f7b-ae6d-2701cccf70b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_ea507d2c-a9ec-4d5d-9557-0841ae6cc33f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_e10d337c-b9af-4f7b-ae6d-2701cccf70b1" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_ea507d2c-a9ec-4d5d-9557-0841ae6cc33f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_December2021PrivatePlacementMember_ed28f8c8-95d2-440a-8eee-a3a12f371e83" xlink:href="efoi-20220930.xsd#efoi_December2021PrivatePlacementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_ea507d2c-a9ec-4d5d-9557-0841ae6cc33f" xlink:to="loc_efoi_December2021PrivatePlacementMember_ed28f8c8-95d2-440a-8eee-a3a12f371e83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_51760733-256b-4cd9-9f36-e4c602c8fc08" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_ea507d2c-a9ec-4d5d-9557-0841ae6cc33f" xlink:to="loc_efoi_InstitutionalInvestorMember_51760733-256b-4cd9-9f36-e4c602c8fc08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_138b9d23-6aa9-4374-986d-59f53ffe162a" xlink:to="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCosts_eedeba13-52bd-42ab-b668-acb6215a9e1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCosts"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_us-gaap_RestructuringCosts_eedeba13-52bd-42ab-b668-acb6215a9e1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_f9853baf-3896-4d72-adf4-0e31db83e7fa" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_f9853baf-3896-4d72-adf4-0e31db83e7fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_5f93a73f-ec50-4e27-97f2-9ff55e02b0f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_5f93a73f-ec50-4e27-97f2-9ff55e02b0f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommonStockClosingBidPriceThreshold_65dddba3-3cc6-4560-b4e7-bd728b8e8fa4" xlink:href="efoi-20220930.xsd#efoi_CommonStockClosingBidPriceThreshold"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_efoi_CommonStockClosingBidPriceThreshold_65dddba3-3cc6-4560-b4e7-bd728b8e8fa4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold_cc572134-9b93-4b18-86c9-0847f2b0459e" xlink:href="efoi-20220930.xsd#efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold_cc572134-9b93-4b18-86c9-0847f2b0459e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_40a4c09a-f17f-4f1c-9d40-e368f06fba13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_us-gaap_StockholdersEquity_40a4c09a-f17f-4f1c-9d40-e368f06fba13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified_a6bdfc1e-d578-41d4-8a4f-04910077b0d9" xlink:href="efoi-20220930.xsd#efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_4e740055-cb05-4605-bde2-a4ddf2d1975c" xlink:to="loc_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified_a6bdfc1e-d578-41d4-8a4f-04910077b0d9" 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-20220930.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_ff6ef2fe-d98e-4172-ad9d-cd9bb6ae0fb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_3e722d05-b3f6-4c7a-8282-952460250181" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_ff6ef2fe-d98e-4172-ad9d-cd9bb6ae0fb2" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_3e722d05-b3f6-4c7a-8282-952460250181" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveAxis_3fc6e8ef-4845-4292-9361-2d579fa93ade" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_3e722d05-b3f6-4c7a-8282-952460250181" xlink:to="loc_us-gaap_RestructuringCostAndReserveAxis_3fc6e8ef-4845-4292-9361-2d579fa93ade" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_6a352155-6c08-4677-8a32-3d1ea4c575c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_3fc6e8ef-4845-4292-9361-2d579fa93ade" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_6a352155-6c08-4677-8a32-3d1ea4c575c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FacilityClosingMember_0331ef43-5138-40fa-82ea-11fa582f9b59" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FacilityClosingMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfRestructuringDomain_6a352155-6c08-4677-8a32-3d1ea4c575c4" xlink:to="loc_us-gaap_FacilityClosingMember_0331ef43-5138-40fa-82ea-11fa582f9b59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_1e5657fe-6dc7-45f5-8a4e-f50b828331a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_3e722d05-b3f6-4c7a-8282-952460250181" xlink:to="loc_us-gaap_RestructuringCostAndReserveLineItems_1e5657fe-6dc7-45f5-8a4e-f50b828331a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserveRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_1e5657fe-6dc7-45f5-8a4e-f50b828331a5" xlink:to="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_7dcc1cbd-6c78-4caa-9a43-3073265ff94d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserve"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:to="loc_us-gaap_RestructuringReserve_7dcc1cbd-6c78-4caa-9a43-3073265ff94d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRestructuring_fca35c22-f0d1-4b02-aa51-50f63f24d1e2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRestructuring"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:to="loc_us-gaap_PaymentsForRestructuring_fca35c22-f0d1-4b02-aa51-50f63f24d1e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_ca777c87-f25c-44da-ba30-1b132d9716dc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringReserve"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_40a1f514-9c4b-4c78-be2b-29aa20ebd5da" xlink:to="loc_us-gaap_RestructuringReserve_ca777c87-f25c-44da-ba30-1b132d9716dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails" xlink:type="simple" xlink:href="efoi-20220930.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_07a0be93-4664-4ec9-9af2-203c81efc91a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials_126262ba-f47a-4138-be96-ada6ef2014fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterials"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_07a0be93-4664-4ec9-9af2-203c81efc91a" xlink:to="loc_us-gaap_InventoryRawMaterials_126262ba-f47a-4138-be96-ada6ef2014fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods_0ce156a7-769e-4c24-ad3a-aac4682648af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_07a0be93-4664-4ec9-9af2-203c81efc91a" xlink:to="loc_us-gaap_InventoryFinishedGoods_0ce156a7-769e-4c24-ad3a-aac4682648af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryValuationReserves_fb59463c-8f13-4941-93d2-a470594adf82" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryValuationReserves"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_07a0be93-4664-4ec9-9af2-203c81efc91a" xlink:to="loc_us-gaap_InventoryValuationReserves_fb59463c-8f13-4941-93d2-a470594adf82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_2ae8157f-2ab7-4a37-a1a9-869a27a46258" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_07a0be93-4664-4ec9-9af2-203c81efc91a" xlink:to="loc_us-gaap_InventoryNet_2ae8157f-2ab7-4a37-a1a9-869a27a46258" 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-20220930.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_InventoryDisclosureAbstract_1ffa1740-e609-4712-881c-70b93c4f92e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryReserveRollForward_5ea121b0-7434-4b98-ba4c-0e394e68fa3b" xlink:href="efoi-20220930.xsd#efoi_InventoryReserveRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_1ffa1740-e609-4712-881c-70b93c4f92e3" xlink:to="loc_efoi_InventoryReserveRollForward_5ea121b0-7434-4b98-ba4c-0e394e68fa3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesRawMaterials_f1bba5a9-194b-4f07-b430-1725ae8b3969" xlink:href="efoi-20220930.xsd#efoi_InventoryValuationReservesRawMaterials"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_5ea121b0-7434-4b98-ba4c-0e394e68fa3b" xlink:to="loc_efoi_InventoryValuationReservesRawMaterials_f1bba5a9-194b-4f07-b430-1725ae8b3969" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesProvisionAccrual_4cfeebf8-795e-4831-b856-bef2342b233d" xlink:href="efoi-20220930.xsd#efoi_InventoryValuationReservesProvisionAccrual"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_5ea121b0-7434-4b98-ba4c-0e394e68fa3b" xlink:to="loc_efoi_InventoryValuationReservesProvisionAccrual_4cfeebf8-795e-4831-b856-bef2342b233d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesSalesOfInventory_f7aae771-8157-4df9-a617-3a558801fc0b" xlink:href="efoi-20220930.xsd#efoi_InventoryValuationReservesSalesOfInventory"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_5ea121b0-7434-4b98-ba4c-0e394e68fa3b" xlink:to="loc_efoi_InventoryValuationReservesSalesOfInventory_f7aae771-8157-4df9-a617-3a558801fc0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesWriteOffs_c235e7fe-cb2d-4d85-9a02-e082a9cf3995" xlink:href="efoi-20220930.xsd#efoi_InventoryValuationReservesWriteOffs"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_5ea121b0-7434-4b98-ba4c-0e394e68fa3b" xlink:to="loc_efoi_InventoryValuationReservesWriteOffs_c235e7fe-cb2d-4d85-9a02-e082a9cf3995" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesRawMaterials_8c59e23f-ab9b-43e5-b0b4-dec32f22829f" xlink:href="efoi-20220930.xsd#efoi_InventoryValuationReservesRawMaterials"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_5ea121b0-7434-4b98-ba4c-0e394e68fa3b" xlink:to="loc_efoi_InventoryValuationReservesRawMaterials_8c59e23f-ab9b-43e5-b0b4-dec32f22829f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#InventoriesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/InventoriesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_db3c3799-c795-456f-a944-ad224fa08369" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1_1a3e68d6-9ff1-4578-b9fd-a4945adb8466" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_db3c3799-c795-456f-a944-ad224fa08369" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1_1a3e68d6-9ff1-4578-b9fd-a4945adb8466" 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-20220930.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_ff4ee6bc-25a1-4263-b0c6-00cce82902f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_ff4ee6bc-25a1-4263-b0c6-00cce82902f3" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_9c6517ad-48cc-43f8-b118-1cfa6db443fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_9c6517ad-48cc-43f8-b118-1cfa6db443fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_9c6517ad-48cc-43f8-b118-1cfa6db443fd" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_68e9f823-84b2-4272-9b07-1f15844e9d30" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_EquipmentMember_68e9f823-84b2-4272-9b07-1f15844e9d30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ToolingMember_92108cfb-54be-4679-aef3-abb80df20fab" xlink:href="efoi-20220930.xsd#efoi_ToolingMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_efoi_ToolingMember_92108cfb-54be-4679-aef3-abb80df20fab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VehiclesMember_137ff729-3105-4ac5-9676-867269bb9909" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VehiclesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_VehiclesMember_137ff729-3105-4ac5-9676-867269bb9909" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_e098c594-c914-4fb3-b4de-b257eceed4ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_e098c594-c914-4fb3-b4de-b257eceed4ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_27275117-cfc4-4c67-8f28-d20a2792ab5c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_27275117-cfc4-4c67-8f28-d20a2792ab5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_1137197f-1159-4a5b-b251-e7aab5bb1542" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_1137197f-1159-4a5b-b251-e7aab5bb1542" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_UltravioletCLightDisinfectionRobotsMember_15df315c-9a44-4d5a-9510-859bd3efd02b" xlink:href="efoi-20220930.xsd#efoi_UltravioletCLightDisinfectionRobotsMember"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_efoi_UltravioletCLightDisinfectionRobotsMember_15df315c-9a44-4d5a-9510-859bd3efd02b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressMember_b16fbb0d-4c36-42c5-884c-37d9d8b2d725" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConstructionInProgressMember"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_c0457acf-b7ea-45b2-a7d9-50e4fef5461e" xlink:to="loc_us-gaap_ConstructionInProgressMember_b16fbb0d-4c36-42c5-884c-37d9d8b2d725" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:to="loc_srt_RangeAxis_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_657d0478-b55f-4553-a317-d934db7a820a" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_70bb9c62-9cf9-4f00-93b5-3263e3d6a9bc" xlink:to="loc_srt_RangeMember_657d0478-b55f-4553-a317-d934db7a820a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_1a46789a-9e72-4465-9bbd-b3ac57ec1528" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_657d0478-b55f-4553-a317-d934db7a820a" xlink:to="loc_srt_MinimumMember_1a46789a-9e72-4465-9bbd-b3ac57ec1528" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_83e11fda-2e02-4285-8f0e-2f52c81ce298" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_657d0478-b55f-4553-a317-d934db7a820a" xlink:to="loc_srt_MaximumMember_83e11fda-2e02-4285-8f0e-2f52c81ce298" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_da3362de-a5f4-4d2a-9d27-34f0be82ea1b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_0be1922a-29a3-42c8-b7a0-59541aad1d69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_0be1922a-29a3-42c8-b7a0-59541aad1d69" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization_c7adaad3-d1b5-40f0-9b8a-383058c28547" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization_c7adaad3-d1b5-40f0-9b8a-383058c28547" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_293d65f3-4673-4cb9-9b04-895d157a4d14" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization_293d65f3-4673-4cb9-9b04-895d157a4d14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_b4ef886e-e3d1-4150-9158-12c75d64759c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization_b4ef886e-e3d1-4150-9158-12c75d64759c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_dfae89a7-40c6-44da-aaf9-16635a09a19a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization_dfae89a7-40c6-44da-aaf9-16635a09a19a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_a15e0d76-886f-473f-bcf1-ba312c2bc4de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_a15e0d76-886f-473f-bcf1-ba312c2bc4de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_53081012-f4e0-4bf5-8b98-bb5c34798d20" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_Depreciation_53081012-f4e0-4bf5-8b98-bb5c34798d20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_d16d22cf-4bd4-4230-b3c3-f7fe31cd8793" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_8495c5ec-cb28-4403-bbed-48292b1829cf" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_d16d22cf-4bd4-4230-b3c3-f7fe31cd8793" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20220930.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_7f325c39-e9d0-4f1f-8448-606c1e449ecb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_3c811767-307a-497b-b10f-b72f1800286f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfOperatingLeasedAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7f325c39-e9d0-4f1f-8448-606c1e449ecb" xlink:to="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_3c811767-307a-497b-b10f-b72f1800286f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_3c811767-307a-497b-b10f-b72f1800286f" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a1e19be0-3a2a-4704-b54d-e8d5ca182577" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_e2f50dff-ccf5-4af9-bae7-48a6dfed2c88" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a1e19be0-3a2a-4704-b54d-e8d5ca182577" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_78788c10-98ef-4197-afd3-e63470ed5e1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquipmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a1e19be0-3a2a-4704-b54d-e8d5ca182577" xlink:to="loc_us-gaap_EquipmentMember_78788c10-98ef-4197-afd3-e63470ed5e1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RealEstateMember_69735d92-fc5f-4380-8fa4-c04ef6888f77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RealEstateMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_a1e19be0-3a2a-4704-b54d-e8d5ca182577" xlink:to="loc_us-gaap_RealEstateMember_69735d92-fc5f-4380-8fa4-c04ef6888f77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasedAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfOperatingLeasedAssetsTable_3c811767-307a-497b-b10f-b72f1800286f" xlink:to="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_48414e02-3a5d-4af2-81be-daab920da636" xlink:href="efoi-20220930.xsd#efoi_LesseeOperatingLeaseInterestRateEffectiveRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:to="loc_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_48414e02-3a5d-4af2-81be-daab920da636" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseDiscountRate_c99c7c1b-d5d2-4028-ab89-a455d0db071d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseDiscountRate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:to="loc_us-gaap_LesseeOperatingLeaseDiscountRate_c99c7c1b-d5d2-4028-ab89-a455d0db071d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_1f30d8af-80aa-4c7d-92b4-ce0939fd7854" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasedAssetsLineItems_161d09b0-071c-4a59-b2ca-2060cdeb1ac9" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_1f30d8af-80aa-4c7d-92b4-ce0939fd7854" 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-20220930.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_d4e7bf4d-1804-492f-b267-19b300ee7cb5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubleaseIncome_0e1ff046-44d8-4afb-b8d3-ab20aa1d7eef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubleaseIncome"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d4e7bf4d-1804-492f-b267-19b300ee7cb5" xlink:to="loc_us-gaap_SubleaseIncome_0e1ff046-44d8-4afb-b8d3-ab20aa1d7eef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_60489bd8-046b-4817-8e02-44c9d2a05317" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d4e7bf4d-1804-492f-b267-19b300ee7cb5" xlink:to="loc_us-gaap_OperatingLeaseCost_60489bd8-046b-4817-8e02-44c9d2a05317" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_a5d07e8b-dba5-41e2-8dde-de393a550be6" xlink:href="efoi-20220930.xsd#efoi_OperatingLeaseCostNetOfSubleaseIncome"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d4e7bf4d-1804-492f-b267-19b300ee7cb5" xlink:to="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_a5d07e8b-dba5-41e2-8dde-de393a550be6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseSubleaseIncome_1e19a9fe-a180-4934-8c1f-b8b23816470a" xlink:href="efoi-20220930.xsd#efoi_RestructuredLeaseSubleaseIncome"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d4e7bf4d-1804-492f-b267-19b300ee7cb5" xlink:to="loc_efoi_RestructuredLeaseSubleaseIncome_1e19a9fe-a180-4934-8c1f-b8b23816470a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCost_031bf7c6-7d5d-4935-91a0-116948d5349e" xlink:href="efoi-20220930.xsd#efoi_RestructuredLeaseOperatingLeaseCost"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d4e7bf4d-1804-492f-b267-19b300ee7cb5" xlink:to="loc_efoi_RestructuredLeaseOperatingLeaseCost_031bf7c6-7d5d-4935-91a0-116948d5349e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_adec1d81-8f2a-46cf-8c14-8c4fa201b8f1" xlink:href="efoi-20220930.xsd#efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d4e7bf4d-1804-492f-b267-19b300ee7cb5" xlink:to="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_adec1d81-8f2a-46cf-8c14-8c4fa201b8f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_e7f1204e-b433-49f7-93f5-3bb1d8713ef9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d4e7bf4d-1804-492f-b267-19b300ee7cb5" xlink:to="loc_us-gaap_LeaseCost_e7f1204e-b433-49f7-93f5-3bb1d8713ef9" 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-20220930.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_8cdaad69-827d-4b81-ab5a-3d19ebf0668a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract_e1199246-beb9-4cf5-863f-9cd1402bbbee" xlink:href="efoi-20220930.xsd#efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_8cdaad69-827d-4b81-ab5a-3d19ebf0668a" xlink:to="loc_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract_e1199246-beb9-4cf5-863f-9cd1402bbbee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_554fedc5-d0ad-4293-948d-99427e91b453" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract_e1199246-beb9-4cf5-863f-9cd1402bbbee" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_554fedc5-d0ad-4293-948d-99427e91b453" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_c81a42cb-ddb5-446c-9816-5cb96e48cb49" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract_e1199246-beb9-4cf5-863f-9cd1402bbbee" xlink:to="loc_us-gaap_OperatingLeaseLiability_c81a42cb-ddb5-446c-9816-5cb96e48cb49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_42927dcb-02dd-45b8-9373-65535c7e6b60" xlink:href="efoi-20220930.xsd#efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_8cdaad69-827d-4b81-ab5a-3d19ebf0668a" xlink:to="loc_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_42927dcb-02dd-45b8-9373-65535c7e6b60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetGross_4c6c2991-66bb-404e-979c-100cc73a3fb7" xlink:href="efoi-20220930.xsd#efoi_FinanceLeaseRightOfUseAssetGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_42927dcb-02dd-45b8-9373-65535c7e6b60" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetGross_4c6c2991-66bb-404e-979c-100cc73a3fb7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_bda1d336-a17d-4b8a-9cef-856856d9e679" xlink:href="efoi-20220930.xsd#efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_42927dcb-02dd-45b8-9373-65535c7e6b60" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_bda1d336-a17d-4b8a-9cef-856856d9e679" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAsset_78ae5eb1-018c-4b0c-98f9-87efe5ac7fbd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_42927dcb-02dd-45b8-9373-65535c7e6b60" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAsset_78ae5eb1-018c-4b0c-98f9-87efe5ac7fbd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_ce61fc5c-8ead-4460-8146-97a48a2c9e33" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract_42927dcb-02dd-45b8-9373-65535c7e6b60" xlink:to="loc_us-gaap_FinanceLeaseLiability_ce61fc5c-8ead-4460-8146-97a48a2c9e33" 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-20220930.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_530d22b1-48f8-4f7d-b714-5a9626f81d59" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_530d22b1-48f8-4f7d-b714-5a9626f81d59" xlink:to="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_72edba86-9e5d-44ab-b302-a41d3bc9f1be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_72edba86-9e5d-44ab-b302-a41d3bc9f1be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_21d55573-fb4c-4919-bb34-33667e4f1f80" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_21d55573-fb4c-4919-bb34-33667e4f1f80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_c1d7ce56-74eb-44d5-8882-f5dbff90597c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_c1d7ce56-74eb-44d5-8882-f5dbff90597c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_3f0adfd7-5321-4095-98bd-e44b597c4565" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_3f0adfd7-5321-4095-98bd-e44b597c4565" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_89b8adfd-e2b9-4901-8c6a-c2270f2c0151" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_89b8adfd-e2b9-4901-8c6a-c2270f2c0151" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_b45d55e5-33d2-48fa-bcfb-91b603385521" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_b45d55e5-33d2-48fa-bcfb-91b603385521" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_40da8fb8-6bf5-42ac-a701-1063cdda2cf7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_40da8fb8-6bf5-42ac-a701-1063cdda2cf7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_481d2059-655f-4d14-92a1-41f5cb53c317" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_cf610906-7dba-421b-a222-14cbdbf04c43" xlink:to="loc_us-gaap_OperatingLeaseLiability_481d2059-655f-4d14-92a1-41f5cb53c317" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" xlink:type="simple" xlink:href="efoi-20220930.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_2a096c8d-7c91-4d44-9e22-c496a11e26fb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_a6d1d2a6-6195-4b5c-85ec-50dbe7ef1015" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_2a096c8d-7c91-4d44-9e22-c496a11e26fb" xlink:to="loc_us-gaap_OperatingLeasePayments_a6d1d2a6-6195-4b5c-85ec-50dbe7ef1015" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesOperatingLeasePayments_e0075ddb-75cb-4052-9a19-9f7abe073cef" xlink:href="efoi-20220930.xsd#efoi_RestructuredLeasesOperatingLeasePayments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_2a096c8d-7c91-4d44-9e22-c496a11e26fb" xlink:to="loc_efoi_RestructuredLeasesOperatingLeasePayments_e0075ddb-75cb-4052-9a19-9f7abe073cef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_49ddad12-5880-456f-953f-4021ad00e1ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_2a096c8d-7c91-4d44-9e22-c496a11e26fb" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_49ddad12-5880-456f-953f-4021ad00e1ab" 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-20220930.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_23a4c2f8-9087-49b6-b3d6-70093112caeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_23a4c2f8-9087-49b6-b3d6-70093112caeb" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_a9d2e598-3563-4362-8485-bcdf10c3cfb7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:to="loc_us-gaap_CreditFacilityAxis_a9d2e598-3563-4362-8485-bcdf10c3cfb7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_61a56ecb-7b8b-44f6-bdcc-2ea94658c2e6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_a9d2e598-3563-4362-8485-bcdf10c3cfb7" xlink:to="loc_us-gaap_CreditFacilityDomain_61a56ecb-7b8b-44f6-bdcc-2ea94658c2e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_b47a7d9b-6955-493d-a014-3a18038fa5bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_61a56ecb-7b8b-44f6-bdcc-2ea94658c2e6" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_b47a7d9b-6955-493d-a014-3a18038fa5bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_f386efa6-833a-4b1e-b8ce-44c103217321" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:to="loc_us-gaap_DebtInstrumentAxis_f386efa6-833a-4b1e-b8ce-44c103217321" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_64e7e3a2-7840-460f-8c38-aa81712dedb8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_f386efa6-833a-4b1e-b8ce-44c103217321" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_64e7e3a2-7840-460f-8c38-aa81712dedb8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryFacilityMember_3ab20fbf-7187-4034-8a78-174b672872a6" xlink:href="efoi-20220930.xsd#efoi_InventoryFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_64e7e3a2-7840-460f-8c38-aa81712dedb8" xlink:to="loc_efoi_InventoryFacilityMember_3ab20fbf-7187-4034-8a78-174b672872a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ReceivablesFacilityMember_6ce43028-7360-4e01-afe6-de33a9232e72" xlink:href="efoi-20220930.xsd#efoi_ReceivablesFacilityMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_64e7e3a2-7840-460f-8c38-aa81712dedb8" xlink:to="loc_efoi_ReceivablesFacilityMember_6ce43028-7360-4e01-afe6-de33a9232e72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_c19d87af-5a32-4c98-b0d5-0a31bed2cba0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:to="loc_us-gaap_VariableRateAxis_c19d87af-5a32-4c98-b0d5-0a31bed2cba0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_0bf191ed-4c84-4aa8-95de-cc9c2a030a0a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateAxis_c19d87af-5a32-4c98-b0d5-0a31bed2cba0" xlink:to="loc_us-gaap_VariableRateDomain_0bf191ed-4c84-4aa8-95de-cc9c2a030a0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_4cfafe6d-acdc-4d8d-b654-da3815bc9ee5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_0bf191ed-4c84-4aa8-95de-cc9c2a030a0a" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_4cfafe6d-acdc-4d8d-b654-da3815bc9ee5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_WallStreetJournalHighestPrimeRateMember_71edf4f8-346e-4c42-b311-f29e67411bf5" xlink:href="efoi-20220930.xsd#efoi_WallStreetJournalHighestPrimeRateMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_0bf191ed-4c84-4aa8-95de-cc9c2a030a0a" xlink:to="loc_efoi_WallStreetJournalHighestPrimeRateMember_71edf4f8-346e-4c42-b311-f29e67411bf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_951fdd71-9f7f-4362-8c89-469fbf0d08ab" xlink:to="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentNumberOfCreditFacilities_574ed717-9c12-417f-82f7-4829985f2157" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentNumberOfCreditFacilities"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_DebtInstrumentNumberOfCreditFacilities_574ed717-9c12-417f-82f7-4829985f2157" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_acfba37a-1c8b-4917-86a5-b7bd8753e784" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_acfba37a-1c8b-4917-86a5-b7bd8753e784" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_cecab98b-1d4d-4346-87a5-b2c80333423e" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_cecab98b-1d4d-4346-87a5-b2c80333423e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_4f7d7cc4-b412-4b26-8b31-acd13b2fa430" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_4f7d7cc4-b412-4b26-8b31-acd13b2fa430" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_6030900a-01a6-4c49-beb0-79e87c7932f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_6030900a-01a6-4c49-beb0-79e87c7932f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentBaseRateVariable_a6ccc814-97f5-40da-bbbc-78e47468da21" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentBaseRateVariable"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_DebtInstrumentBaseRateVariable_a6ccc814-97f5-40da-bbbc-78e47468da21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_3fd677a5-805a-41f7-8cec-6eccd6a60b71" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFeePercent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_3fd677a5-805a-41f7-8cec-6eccd6a60b71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee_ea54f534-3e1e-4aab-b124-92988e840ac4" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFee"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee_ea54f534-3e1e-4aab-b124-92988e840ac4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_4afc50b6-a78d-420f-bf18-f6b137c642b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityExpirationPeriod"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_4afc50b6-a78d-420f-bf18-f6b137c642b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityTerminationNoticePeriod_a4067ce1-6c6d-49be-a12b-f7ef30d8e8d6" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityTerminationNoticePeriod"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityTerminationNoticePeriod_a4067ce1-6c6d-49be-a12b-f7ef30d8e8d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityAnnualFacilityFee_d116fa1a-b33a-4618-b7d4-eb175cdc62cd" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityAnnualFacilityFee"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityAnnualFacilityFee_d116fa1a-b33a-4618-b7d4-eb175cdc62cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_fbd37df8-9815-41a3-81f6-a8c01eec50e4" xlink:href="efoi-20220930.xsd#efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_fbd37df8-9815-41a3-81f6-a8c01eec50e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_b0997ce1-d1e5-41b7-b897-39c15820abda" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_b0997ce1-d1e5-41b7-b897-39c15820abda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent_d4ca4fcc-ad22-420d-b9e9-71679c06a8ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_LinesOfCreditCurrent_d4ca4fcc-ad22-420d-b9e9-71679c06a8ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnamortizedDebtIssuanceExpense_0c0d826e-1b0b-4dc8-9c6d-35be2455ffeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnamortizedDebtIssuanceExpense"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_3b27d1b3-0e81-4352-83ca-88c29f50a642" xlink:to="loc_us-gaap_UnamortizedDebtIssuanceExpense_0c0d826e-1b0b-4dc8-9c6d-35be2455ffeb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#DebtPromissoryNotePayableDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_edd4804d-2cfc-4939-bad4-65449541ded2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_edd4804d-2cfc-4939-bad4-65449541ded2" xlink:to="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis_0c1fb120-3627-4b59-9ce0-844352f3e93a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:to="loc_us-gaap_RelatedPartyTransactionAxis_0c1fb120-3627-4b59-9ce0-844352f3e93a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_5aacf985-39dd-4d69-891f-d3383e303e8f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_0c1fb120-3627-4b59-9ce0-844352f3e93a" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_5aacf985-39dd-4d69-891f-d3383e303e8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022PromissoryNoteMember_135f97d9-06d7-434b-a61d-fa0bc1301a01" xlink:href="efoi-20220930.xsd#efoi_A2022PromissoryNoteMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_5aacf985-39dd-4d69-891f-d3383e303e8f" xlink:to="loc_efoi_A2022PromissoryNoteMember_135f97d9-06d7-434b-a61d-fa0bc1301a01" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_5da70b47-2793-4620-bee6-196af7e52d13" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_5da70b47-2793-4620-bee6-196af7e52d13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_f669e920-7841-46cf-9e98-909a3a5c12a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_5da70b47-2793-4620-bee6-196af7e52d13" xlink:to="loc_us-gaap_RelatedPartyDomain_f669e920-7841-46cf-9e98-909a3a5c12a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember_b553795f-6c5a-4199-af4e-91745163ff4f" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_f669e920-7841-46cf-9e98-909a3a5c12a3" xlink:to="loc_srt_DirectorMember_b553795f-6c5a-4199-af4e-91745163ff4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_20168e53-4345-4552-979a-23574b714ffa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_7f20b37f-467d-4ebb-9cc0-a735d14b25b2" xlink:to="loc_us-gaap_DebtInstrumentLineItems_20168e53-4345-4552-979a-23574b714ffa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_1022d0e2-1ec8-42e7-bda2-22488f4c5097" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_20168e53-4345-4552-979a-23574b714ffa" xlink:to="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_1022d0e2-1ec8-42e7-bda2-22488f4c5097" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_3998c901-0287-40cc-b246-0f38d37a165e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DueToRelatedPartiesCurrentAndNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_20168e53-4345-4552-979a-23574b714ffa" xlink:to="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_3998c901-0287-40cc-b246-0f38d37a165e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#DebtStreetervilleNotesDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_109c6252-8c54-4284-83ac-6632da0c7edf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_109c6252-8c54-4284-83ac-6632da0c7edf" xlink:to="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_62577df9-9bed-4a18-b42e-6fe8266fd744" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:to="loc_us-gaap_DebtInstrumentAxis_62577df9-9bed-4a18-b42e-6fe8266fd744" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_a480b0ea-2026-43ff-be3f-848c05af3c41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_62577df9-9bed-4a18-b42e-6fe8266fd744" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_a480b0ea-2026-43ff-be3f-848c05af3c41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022StreetervilleNoteMember_c9aa3ce4-80c8-4a29-b12f-66a4fa0ab0bd" xlink:href="efoi-20220930.xsd#efoi_A2022StreetervilleNoteMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a480b0ea-2026-43ff-be3f-848c05af3c41" xlink:to="loc_efoi_A2022StreetervilleNoteMember_c9aa3ce4-80c8-4a29-b12f-66a4fa0ab0bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2021StreetervilleNoteMember_4255c40d-9381-427d-ac6d-3b6cb73c77c9" xlink:href="efoi-20220930.xsd#efoi_A2021StreetervilleNoteMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a480b0ea-2026-43ff-be3f-848c05af3c41" xlink:to="loc_efoi_A2021StreetervilleNoteMember_4255c40d-9381-427d-ac6d-3b6cb73c77c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_54df4e72-9c9a-42d3-ac03-9725579a9479" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_54df4e72-9c9a-42d3-ac03-9725579a9479" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_6dab0b3a-c136-4869-950f-5f1d38fce4ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_54df4e72-9c9a-42d3-ac03-9725579a9479" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_6dab0b3a-c136-4869-950f-5f1d38fce4ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_b4749644-272f-4bc1-bbdd-879fc171219a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_6dab0b3a-c136-4869-950f-5f1d38fce4ed" xlink:to="loc_us-gaap_SubsequentEventMember_b4749644-272f-4bc1-bbdd-879fc171219a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_bc960f2d-3ad6-4edd-9e5a-84167392dcf5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_bc960f2d-3ad6-4edd-9e5a-84167392dcf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_80e23c2e-02f1-4260-9a89-06e810a8a3b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_bc960f2d-3ad6-4edd-9e5a-84167392dcf5" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_80e23c2e-02f1-4260-9a89-06e810a8a3b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember_a5947656-bcc1-419b-8461-12f7497ad2e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodOneMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_80e23c2e-02f1-4260-9a89-06e810a8a3b6" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember_a5947656-bcc1-419b-8461-12f7497ad2e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_7bc884a1-23c7-4183-a482-c25d986987a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentRedemptionPeriodTwoMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_80e23c2e-02f1-4260-9a89-06e810a8a3b6" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_7bc884a1-23c7-4183-a482-c25d986987a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_7ffb11f0-8b69-476a-b56c-7b458ae443eb" xlink:to="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_298bfd15-4330-4184-a590-05869bd6e947" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_298bfd15-4330-4184-a590-05869bd6e947" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_4be11d9a-5366-414d-bb8b-63303a8f5658" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_4be11d9a-5366-414d-bb8b-63303a8f5658" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_8a3930e9-60eb-433b-8ab1-1c3c4fb9c090" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_8a3930e9-60eb-433b-8ab1-1c3c4fb9c090" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross_207085d0-17cd-4050-aa5f-15f2fc5cc3bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DeferredFinanceCostsGross_207085d0-17cd-4050-aa5f-15f2fc5cc3bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_c69e2e2b-f029-4bb4-b942-51bdb050eaf0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_c69e2e2b-f029-4bb4-b942-51bdb050eaf0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPrepaymentPremiumPercent_6c4ad80a-b727-468a-a0c5-d4a0c6ac9dcf" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentPrepaymentPremiumPercent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtInstrumentPrepaymentPremiumPercent_6c4ad80a-b727-468a-a0c5-d4a0c6ac9dcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtPrepaymentMaximumPercentage_4c05b082-028b-4f1c-9091-e22a00491d29" xlink:href="efoi-20220930.xsd#efoi_DebtPrepaymentMaximumPercentage"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtPrepaymentMaximumPercentage_4c05b082-028b-4f1c-9091-e22a00491d29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_c23aa4ac-e7a5-4f64-8a51-46847681cca4" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_c23aa4ac-e7a5-4f64-8a51-46847681cca4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_353516f3-1cd8-4bca-9de2-c7d17a0da1be" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_353516f3-1cd8-4bca-9de2-c7d17a0da1be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_6e295c47-46fd-41aa-b8d9-32a01863cd10" xlink:href="efoi-20220930.xsd#efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_6e295c47-46fd-41aa-b8d9-32a01863cd10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_f204a958-5f00-4d9a-b867-d9bedb54c3cd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_f204a958-5f00-4d9a-b867-d9bedb54c3cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_81597cb0-0ec6-45ae-8885-e5b6ffe3356a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_81597cb0-0ec6-45ae-8885-e5b6ffe3356a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_0434cc69-7a48-48eb-9661-3b202373d87d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_0434cc69-7a48-48eb-9661-3b202373d87d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange_7eff82f7-f364-4982-964b-f1a809a7835b" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_506c0b9c-bdbf-4971-b6ed-d9c875c20aa0" xlink:to="loc_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange_7eff82f7-f364-4982-964b-f1a809a7835b" 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-20220930.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_88782334-640b-498b-a664-1f648dd5b883" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_f02d2118-59fb-436a-9610-9cfdb9814482" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_88782334-640b-498b-a664-1f648dd5b883" xlink:to="loc_us-gaap_DebtInstrumentTable_f02d2118-59fb-436a-9610-9cfdb9814482" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_511438bb-f216-4745-a775-7a2d11f3a4c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_f02d2118-59fb-436a-9610-9cfdb9814482" xlink:to="loc_us-gaap_DebtInstrumentAxis_511438bb-f216-4745-a775-7a2d11f3a4c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_bc2d9e88-2c8b-4c82-84ed-3227a87b0d1a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_511438bb-f216-4745-a775-7a2d11f3a4c6" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_bc2d9e88-2c8b-4c82-84ed-3227a87b0d1a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaycheckProtectionProgramCARESActMember_fab7617a-0dbb-4bc6-bacf-11d8f7205b11" xlink:href="efoi-20220930.xsd#efoi_PaycheckProtectionProgramCARESActMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_bc2d9e88-2c8b-4c82-84ed-3227a87b0d1a" xlink:to="loc_efoi_PaycheckProtectionProgramCARESActMember_fab7617a-0dbb-4bc6-bacf-11d8f7205b11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_f02d2118-59fb-436a-9610-9cfdb9814482" xlink:to="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLoanOriginations1_a01dd2b4-63af-4229-b1f2-e9364bfb46be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLoanOriginations1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:to="loc_us-gaap_ProceedsFromLoanOriginations1_a01dd2b4-63af-4229-b1f2-e9364bfb46be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_87e992e6-e1b8-4c3c-8adc-4475039fcf18" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_87e992e6-e1b8-4c3c-8adc-4475039fcf18" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_270fa628-2e5e-4199-ab00-b9c4cd094e1c" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_a29ea9b7-3c89-4394-9542-7878e0027561" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_270fa628-2e5e-4199-ab00-b9c4cd094e1c" 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-20220930.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_3d8b866e-bc0d-469d-ab3b-7f88ced305b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_5bfe1414-1bf1-4527-8f6b-f585ec935d1f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_3d8b866e-bc0d-469d-ab3b-7f88ced305b6" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_5bfe1414-1bf1-4527-8f6b-f585ec935d1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_5bfe1414-1bf1-4527-8f6b-f585ec935d1f" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_ee143c4e-3480-44b5-819d-a43ba3933809" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_48214a6d-0466-4bae-ac3e-5eeceb1cb0ae" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_ee143c4e-3480-44b5-819d-a43ba3933809" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_a198f242-bce8-4fbb-9b84-2070237b0d2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticCountryMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_ee143c4e-3480-44b5-819d-a43ba3933809" xlink:to="loc_us-gaap_DomesticCountryMember_a198f242-bce8-4fbb-9b84-2070237b0d2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_f816cc2b-2093-40d9-8a45-81fd114397c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_ee143c4e-3480-44b5-819d-a43ba3933809" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_f816cc2b-2093-40d9-8a45-81fd114397c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_5bfe1414-1bf1-4527-8f6b-f585ec935d1f" xlink:to="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_8e58cde0-48b0-44c8-aa95-4a955782aab8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_8e58cde0-48b0-44c8-aa95-4a955782aab8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_5a9b6cc9-e1bb-4d66-9148-08aa01a91a8a" xlink:href="efoi-20220930.xsd#efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_5a9b6cc9-e1bb-4d66-9148-08aa01a91a8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_a0d3ce22-3396-4962-82b8-b5a2b32592b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_us-gaap_OperatingLossCarryforwards_a0d3ce22-3396-4962-82b8-b5a2b32592b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_d2d9af44-7f6a-4e5e-9677-25a73e1f822f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_6be66c47-508d-4663-bcaf-da11ab5d031a" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_d2d9af44-7f6a-4e5e-9677-25a73e1f822f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_4f560121-30ef-4f18-8bbc-fd71537f5416" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_4f560121-30ef-4f18-8bbc-fd71537f5416" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_fbb91fef-2316-4428-87ca-5e0b7b71d6b2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_fbb91fef-2316-4428-87ca-5e0b7b71d6b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_30452cfc-6190-4599-8f08-db5cf6430872" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_fbb91fef-2316-4428-87ca-5e0b7b71d6b2" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_30452cfc-6190-4599-8f08-db5cf6430872" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_June2022PrivatePlacementMember_47b728e1-b4d3-42dd-a84d-295a9dc7f4fb" xlink:href="efoi-20220930.xsd#efoi_June2022PrivatePlacementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_30452cfc-6190-4599-8f08-db5cf6430872" xlink:to="loc_efoi_June2022PrivatePlacementMember_47b728e1-b4d3-42dd-a84d-295a9dc7f4fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_December2021PrivatePlacementMember_f3465827-2b58-4609-a1ce-f418d7bdbc22" xlink:href="efoi-20220930.xsd#efoi_December2021PrivatePlacementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_30452cfc-6190-4599-8f08-db5cf6430872" xlink:to="loc_efoi_December2021PrivatePlacementMember_f3465827-2b58-4609-a1ce-f418d7bdbc22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightAxis_9c9d7d0e-18e8-4d55-b269-ea15c40436a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:to="loc_us-gaap_ClassOfWarrantOrRightAxis_9c9d7d0e-18e8-4d55-b269-ea15c40436a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightDomain_bc057831-a17c-4435-8a03-6d32c6d7ff86" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfWarrantOrRightAxis_9c9d7d0e-18e8-4d55-b269-ea15c40436a2" xlink:to="loc_us-gaap_ClassOfWarrantOrRightDomain_bc057831-a17c-4435-8a03-6d32c6d7ff86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PreFundedWarrantsMember_ffa49fa8-ae41-4cd4-addc-5876370ca7c6" xlink:href="efoi-20220930.xsd#efoi_PreFundedWarrantsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain_bc057831-a17c-4435-8a03-6d32c6d7ff86" xlink:to="loc_efoi_PreFundedWarrantsMember_ffa49fa8-ae41-4cd4-addc-5876370ca7c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_0789d016-10c3-43f5-ac50-5127cb85ccdb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WarrantMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfWarrantOrRightDomain_bc057831-a17c-4435-8a03-6d32c6d7ff86" xlink:to="loc_us-gaap_WarrantMember_0789d016-10c3-43f5-ac50-5127cb85ccdb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d48c476d-1a6c-4712-baa1-93c96c5bfd25" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_7df60da4-28c3-445a-aec5-a87e8bd43049" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_7df60da4-28c3-445a-aec5-a87e8bd43049" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_3e470cb5-5632-43e8-9689-1facf5cb9930" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_3e470cb5-5632-43e8-9689-1facf5cb9930" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_d0f302bc-6543-48aa-8093-61c8bce30032" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_d0f302bc-6543-48aa-8093-61c8bce30032" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_5085e8ab-d70b-47c8-b954-f1157d1e7064" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_5085e8ab-d70b-47c8-b954-f1157d1e7064" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_e6d2d807-f570-45dc-80c6-e9c206bcaf84" xlink:href="efoi-20220930.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_e6d2d807-f570-45dc-80c6-e9c206bcaf84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3160e34d-d2c3-4437-8010-6117aaa08255" xlink:href="efoi-20220930.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3160e34d-d2c3-4437-8010-6117aaa08255" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_19008317-23ed-4ae0-a099-436cc77b9b36" xlink:href="efoi-20220930.xsd#efoi_PaymentsForClearingFees"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_PaymentsForClearingFees_19008317-23ed-4ae0-a099-436cc77b9b36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_97bc33dd-f3aa-4e71-92b6-6c389efaaa83" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_97bc33dd-f3aa-4e71-92b6-6c389efaaa83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_62a5df13-21a4-45d0-9c39-51658a1e70ce" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_62a5df13-21a4-45d0-9c39-51658a1e70ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_a34f6ac2-7053-4012-a2fd-af5c1446b62d" xlink:href="efoi-20220930.xsd#efoi_EstimatedProceedsFromIssuanceOfWarrants"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_a34f6ac2-7053-4012-a2fd-af5c1446b62d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_3f46659a-629a-4ba6-998b-186b4fbe1015" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbd48865-42e9-4399-a2f4-0b3cb6c74cd1" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_3f46659a-629a-4ba6-998b-186b4fbe1015" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityJune2021EquityOfferingDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_4b739701-27b0-4fdc-925f-0f870233c5aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_5fda6e85-6169-44e7-a103-a7c0e16768c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_4b739701-27b0-4fdc-925f-0f870233c5aa" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_5fda6e85-6169-44e7-a103-a7c0e16768c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_476b6bb3-c050-4625-b130-476d75c8d743" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_5fda6e85-6169-44e7-a103-a7c0e16768c5" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_476b6bb3-c050-4625-b130-476d75c8d743" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_84426a95-afac-4f1c-acae-412097cffe92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_476b6bb3-c050-4625-b130-476d75c8d743" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_84426a95-afac-4f1c-acae-412097cffe92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_8fb04b42-7c94-41dc-969c-b0c1442e5c30" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_84426a95-afac-4f1c-acae-412097cffe92" xlink:to="loc_efoi_InstitutionalInvestorMember_8fb04b42-7c94-41dc-969c-b0c1442e5c30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_5fda6e85-6169-44e7-a103-a7c0e16768c5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_8801309f-9161-4872-b0ca-a806cf519499" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_8801309f-9161-4872-b0ca-a806cf519499" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_46deb0da-e8d2-4399-8268-287387383d79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_46deb0da-e8d2-4399-8268-287387383d79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_1a4214d5-9ef5-41e9-88c1-9a0f2c1fb970" xlink:href="efoi-20220930.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_1a4214d5-9ef5-41e9-88c1-9a0f2c1fb970" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_08f36ad1-0c09-468b-ba8f-f4b95e0fd9e6" xlink:href="efoi-20220930.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_08f36ad1-0c09-468b-ba8f-f4b95e0fd9e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_9585afeb-f4df-48ac-8946-004c9eccb8a3" xlink:href="efoi-20220930.xsd#efoi_PaymentsForClearingFees"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_efoi_PaymentsForClearingFees_9585afeb-f4df-48ac-8946-004c9eccb8a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_5cda551c-bfca-440c-a4b5-5497ef23e154" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_5cda551c-bfca-440c-a4b5-5497ef23e154" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_fe47ccc0-112e-432c-809a-750dcd04761d" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e1006e38-ad8c-4215-a7ec-faac2ad384ca" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_fe47ccc0-112e-432c-809a-750dcd04761d" 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-20220930.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_EquityAbstract_ef74f124-1701-44c3-9bbb-921ea094fe6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_ef74f124-1701-44c3-9bbb-921ea094fe6e" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_d4476ee8-b57f-421e-ba80-b78b4c874811" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_d4476ee8-b57f-421e-ba80-b78b4c874811" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_ce801b0e-e01c-4b8c-991b-3fec869ab36b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_d4476ee8-b57f-421e-ba80-b78b4c874811" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_ce801b0e-e01c-4b8c-991b-3fec869ab36b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember_5b74a416-81a1-4d28-9453-94b48fd6c971" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_ce801b0e-e01c-4b8c-991b-3fec869ab36b" xlink:to="loc_us-gaap_ConvertibleDebtMember_5b74a416-81a1-4d28-9453-94b48fd6c971" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_8852c0fb-cae0-4bad-8030-32d1e330a53e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_8852c0fb-cae0-4bad-8030-32d1e330a53e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_8a3a8e68-6363-42c1-ad27-0470827af0f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8852c0fb-cae0-4bad-8030-32d1e330a53e" xlink:to="loc_us-gaap_EquityComponentDomain_8a3a8e68-6363-42c1-ad27-0470827af0f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_808478e9-a635-47cc-8199-a2ababad0207" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_8a3a8e68-6363-42c1-ad27-0470827af0f6" xlink:to="loc_us-gaap_PreferredStockMember_808478e9-a635-47cc-8199-a2ababad0207" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_0cf8dd14-755d-4a0a-acc2-294bfaa804d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_8a3a8e68-6363-42c1-ad27-0470827af0f6" xlink:to="loc_us-gaap_CommonStockMember_0cf8dd14-755d-4a0a-acc2-294bfaa804d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CounterpartyNameAxis_8901eb19-b451-4e2c-bb05-2ee80a50c769" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_CounterpartyNameAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_srt_CounterpartyNameAxis_8901eb19-b451-4e2c-bb05-2ee80a50c769" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RepurchaseAgreementCounterpartyNameDomain_44136e6e-9da3-4d6e-a64e-015aaa24c8c5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RepurchaseAgreementCounterpartyNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CounterpartyNameAxis_8901eb19-b451-4e2c-bb05-2ee80a50c769" xlink:to="loc_srt_RepurchaseAgreementCounterpartyNameDomain_44136e6e-9da3-4d6e-a64e-015aaa24c8c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FusionParkLLCMember_b5bbba30-de73-4e98-ac97-7cb74dbf1a65" xlink:href="efoi-20220930.xsd#efoi_FusionParkLLCMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain_44136e6e-9da3-4d6e-a64e-015aaa24c8c5" xlink:to="loc_efoi_FusionParkLLCMember_b5bbba30-de73-4e98-ac97-7cb74dbf1a65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_BrilliantStartEnterpriseIncMember_fa50ce01-46c9-430f-9638-706e86638f68" xlink:href="efoi-20220930.xsd#efoi_BrilliantStartEnterpriseIncMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain_44136e6e-9da3-4d6e-a64e-015aaa24c8c5" xlink:to="loc_efoi_BrilliantStartEnterpriseIncMember_fa50ce01-46c9-430f-9638-706e86638f68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_a6028fef-1782-4b71-a96a-35796de98af6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_us-gaap_StatementClassOfStockAxis_a6028fef-1782-4b71-a96a-35796de98af6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_019982dd-2b43-48f9-b8c6-7d74067ef5f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfStockDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_a6028fef-1782-4b71-a96a-35796de98af6" xlink:to="loc_us-gaap_ClassOfStockDomain_019982dd-2b43-48f9-b8c6-7d74067ef5f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_2fba68df-ac87-4eaf-9afa-b3d27410f1a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_019982dd-2b43-48f9-b8c6-7d74067ef5f5" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_2fba68df-ac87-4eaf-9afa-b3d27410f1a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_240ed485-1c2a-42bf-9cdc-3cc9b70a545f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_b6dac01a-2fa4-4fab-aa47-41ff740bab7f" xlink:href="efoi-20220930.xsd#efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_b6dac01a-2fa4-4fab-aa47-41ff740bab7f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_8607501c-40f6-4768-9f32-cb937713cbff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_8607501c-40f6-4768-9f32-cb937713cbff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_4fbc8324-9eb5-4e7c-b3e1-f88c7409440d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_4fbc8324-9eb5-4e7c-b3e1-f88c7409440d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_1545a833-1652-495b-8960-90fc87f6bb1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_1545a833-1652-495b-8960-90fc87f6bb1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_1ad2814d-19ce-4c9b-abdc-99bb819e039b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_1ad2814d-19ce-4c9b-abdc-99bb819e039b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_9d4e5ec3-5d3a-4937-a842-f7923b771840" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_9d4e5ec3-5d3a-4937-a842-f7923b771840" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_a9c8b539-c5df-4474-b2ae-3158510328ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_a9c8b539-c5df-4474-b2ae-3158510328ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_c623a321-9991-488b-9043-4338528145ac" xlink:href="efoi-20220930.xsd#efoi_PercentageOfSeriesAPreferredStockEligibleToVote"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_87a4c8d3-2460-468a-9436-755129573c92" xlink:to="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_c623a321-9991-488b-9043-4338528145ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityJune2020EquityOfferingDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_ab220674-dfed-49d4-9b97-77e5ed6d832b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_acd5103e-27bc-4a6c-878a-a0107c435395" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_ab220674-dfed-49d4-9b97-77e5ed6d832b" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_acd5103e-27bc-4a6c-878a-a0107c435395" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_acd5103e-27bc-4a6c-878a-a0107c435395" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_c6c78e49-2ffe-4d2c-ab91-cebf62bb3508" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020InstitutionalInvestorMember_7369168d-161e-432d-8610-1e23ce204d4c" xlink:href="efoi-20220930.xsd#efoi_January2020InstitutionalInvestorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:to="loc_efoi_January2020InstitutionalInvestorMember_7369168d-161e-432d-8610-1e23ce204d4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_e67da86a-06cb-4201-bf51-1c0008abe784" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:to="loc_efoi_InstitutionalInvestorMember_e67da86a-06cb-4201-bf51-1c0008abe784" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingMember_d2ea7778-7f19-4458-ae29-0a7655150d6b" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:to="loc_efoi_January2020EquityOfferingMember_d2ea7778-7f19-4458-ae29-0a7655150d6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingPrivatePlacementMember_42233015-5717-4e1f-8d08-3a2843f8a612" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingPrivatePlacementMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_6578a995-dd19-49aa-877a-45ff93111c4b" xlink:to="loc_efoi_January2020EquityOfferingPrivatePlacementMember_42233015-5717-4e1f-8d08-3a2843f8a612" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_acd5103e-27bc-4a6c-878a-a0107c435395" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_b6140499-aad3-4dbf-8fca-4d439b17d59c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_b6140499-aad3-4dbf-8fca-4d439b17d59c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_acaa2bd0-c184-4aae-ac01-da46b5a73a7f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_acaa2bd0-c184-4aae-ac01-da46b5a73a7f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_65899493-f31c-49fd-81aa-8577fbf1ba58" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights_65899493-f31c-49fd-81aa-8577fbf1ba58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_4e43fee9-0d14-4d6c-b3c3-2e009fee1c38" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_4e43fee9-0d14-4d6c-b3c3-2e009fee1c38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_a0e191c1-36d8-4da9-aba8-a19fa54bec33" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_a0e191c1-36d8-4da9-aba8-a19fa54bec33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_8f8e642f-8f3f-42e4-8ba1-3f9952a0cea1" xlink:href="efoi-20220930.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_8f8e642f-8f3f-42e4-8ba1-3f9952a0cea1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_78e1b2b7-ef53-402f-829c-690723b02efb" xlink:href="efoi-20220930.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_78e1b2b7-ef53-402f-829c-690723b02efb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_2712dc40-16a1-4a6d-8a7e-2cc03aeb7b5b" xlink:href="efoi-20220930.xsd#efoi_PaymentsForClearingFees"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_PaymentsForClearingFees_2712dc40-16a1-4a6d-8a7e-2cc03aeb7b5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_ca14512f-fb7d-48f1-85ba-bdcda65fa433" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_ca14512f-fb7d-48f1-85ba-bdcda65fa433" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_7f4a8f2b-582e-4262-8c2b-31b9f40f315d" xlink:href="efoi-20220930.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_7f4a8f2b-582e-4262-8c2b-31b9f40f315d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_d7bc6b35-e1c7-40d3-9b14-f7ea36c2fd20" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_d7bc6b35-e1c7-40d3-9b14-f7ea36c2fd20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_b8598519-5385-4e08-af2b-406bde27c8c2" xlink:href="efoi-20220930.xsd#efoi_EstimatedProceedsFromIssuanceOfWarrants"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_efoi_EstimatedProceedsFromIssuanceOfWarrants_b8598519-5385-4e08-af2b-406bde27c8c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_266c566e-5e29-4308-92db-929b2f9d948e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_266c566e-5e29-4308-92db-929b2f9d948e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_8fa1e1c0-236e-44d4-80f2-c0c754934ec6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7a6e279f-de4a-4f74-8665-8f1bd78fbf77" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_8fa1e1c0-236e-44d4-80f2-c0c754934ec6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_fb67720d-7ffc-4e60-80d1-ccbffd3cb7cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4b78ed44-0058-4853-8275-861f99ebdcc5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_fb67720d-7ffc-4e60-80d1-ccbffd3cb7cf" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4b78ed44-0058-4853-8275-861f99ebdcc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_98337b0c-7a2d-4693-851b-a087758745f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4b78ed44-0058-4853-8275-861f99ebdcc5" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_98337b0c-7a2d-4693-851b-a087758745f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4c3f125c-dc54-46b9-bc63-faadb4b14940" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_98337b0c-7a2d-4693-851b-a087758745f8" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4c3f125c-dc54-46b9-bc63-faadb4b14940" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_4c3f125c-dc54-46b9-bc63-faadb4b14940" xlink:to="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_c40e0128-d163-4192-8fc3-5de120cd2af0" xlink:href="efoi-20220930.xsd#efoi_InstitutionalInvestorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:to="loc_efoi_InstitutionalInvestorMember_c40e0128-d163-4192-8fc3-5de120cd2af0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020InstitutionalInvestorMember_525017bb-f0d8-4aa7-8335-a1d7e0b78094" xlink:href="efoi-20220930.xsd#efoi_January2020InstitutionalInvestorMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:to="loc_efoi_January2020InstitutionalInvestorMember_525017bb-f0d8-4aa7-8335-a1d7e0b78094" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_January2020EquityOfferingPrivatePlacementMember_f3e9de2b-ed66-4f88-9af5-271afe76d3fa" xlink:href="efoi-20220930.xsd#efoi_January2020EquityOfferingPrivatePlacementMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_January2020EquityOfferingMember_47b39fc7-949d-4b4a-81f7-867f1b6b1c12" xlink:to="loc_efoi_January2020EquityOfferingPrivatePlacementMember_f3e9de2b-ed66-4f88-9af5-271afe76d3fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_4b78ed44-0058-4853-8275-861f99ebdcc5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_00d572de-ea47-4bb9-a14e-f231cf12d77c" xlink:href="efoi-20220930.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_00d572de-ea47-4bb9-a14e-f231cf12d77c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_b7598081-d676-46ae-b46c-88edead5b1d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_b7598081-d676-46ae-b46c-88edead5b1d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_44805f99-b802-485e-84ad-d0a9bacb9570" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_5a6d9b15-27b9-4d0a-9699-566cb839d146" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_44805f99-b802-485e-84ad-d0a9bacb9570" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="simple" xlink:href="efoi-20220930.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_EquityAbstract_0f9a6d02-5f4c-4ec9-9457-236a67bf9bf9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_41e6315c-02fd-4bd6-b1f1-389531872659" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_0f9a6d02-5f4c-4ec9-9457-236a67bf9bf9" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_41e6315c-02fd-4bd6-b1f1-389531872659" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_bbea7659-4b88-474d-992a-44929f391634" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_41e6315c-02fd-4bd6-b1f1-389531872659" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_bbea7659-4b88-474d-992a-44929f391634" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_bbea7659-4b88-474d-992a-44929f391634" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_2e48fd1e-ffd0-4930-8ac5-49822e2efd7a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:to="loc_us-gaap_CostOfSalesMember_2e48fd1e-ffd0-4930-8ac5-49822e2efd7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f506fe74-3164-4727-bb7b-ef55fc2e5bd2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f506fe74-3164-4727-bb7b-ef55fc2e5bd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_cd814aec-fd7e-4938-a3b5-53984be91eb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_a962fd8f-a8d0-4202-84e7-5bcc9faf0bca" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_cd814aec-fd7e-4938-a3b5-53984be91eb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_41e6315c-02fd-4bd6-b1f1-389531872659" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_be0ceef2-e8f4-4e29-b325-b512bdf89af4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_be0ceef2-e8f4-4e29-b325-b512bdf89af4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_70fb0576-845d-4825-b480-a272f2941fe8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_70fb0576-845d-4825-b480-a272f2941fe8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_a5f7368d-bdff-44d9-a3d4-08d3d961ddc7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_34a6f5fc-60cf-41bd-ac9b-b2c1900968d9" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_a5f7368d-bdff-44d9-a3d4-08d3d961ddc7" 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-20220930.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_EquityAbstract_5bcd0e35-2f5d-4277-a460-7869a1474ca8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1cc76eae-7443-4657-8180-89e24b1633e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_5bcd0e35-2f5d-4277-a460-7869a1474ca8" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1cc76eae-7443-4657-8180-89e24b1633e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_b6f74989-b1f4-4937-a0ce-af9805fd0666" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1cc76eae-7443-4657-8180-89e24b1633e1" xlink:to="loc_us-gaap_AwardTypeAxis_b6f74989-b1f4-4937-a0ce-af9805fd0666" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_47126e94-7b37-46df-b9a3-7eacb6a6ed67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_b6f74989-b1f4-4937-a0ce-af9805fd0666" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_47126e94-7b37-46df-b9a3-7eacb6a6ed67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_30b12d9d-c7f6-4e93-918b-8f49d42ae5a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_47126e94-7b37-46df-b9a3-7eacb6a6ed67" xlink:to="loc_us-gaap_EmployeeStockOptionMember_30b12d9d-c7f6-4e93-918b-8f49d42ae5a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1cc76eae-7443-4657-8180-89e24b1633e1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_cd49a77c-f4a4-4380-9ba9-a2bed4ddd860" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_cd49a77c-f4a4-4380-9ba9-a2bed4ddd860" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_3c51db68-54ea-4493-9c3c-19fbb33f7973" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_3c51db68-54ea-4493-9c3c-19fbb33f7973" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9238d142-c552-4b34-b2a2-22b49f0879ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_9238d142-c552-4b34-b2a2-22b49f0879ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_54b9f469-6c44-410d-b184-afe2a280a60b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_54b9f469-6c44-410d-b184-afe2a280a60b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_494eb1cf-6f4a-4b1a-a758-b131c35e867d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_494eb1cf-6f4a-4b1a-a758-b131c35e867d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_f4287b7e-77ca-4b5f-a3ba-a146fe995b12" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_929c3a44-3d54-4310-a349-c04807218b00" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_f4287b7e-77ca-4b5f-a3ba-a146fe995b12" 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-20220930.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_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_ce43943e-8847-4d4b-bf21-56fd417f4ad2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_ce43943e-8847-4d4b-bf21-56fd417f4ad2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_38d725ee-e1a5-4ea9-9ae3-59bc7a49dc04" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_ce43943e-8847-4d4b-bf21-56fd417f4ad2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_38d725ee-e1a5-4ea9-9ae3-59bc7a49dc04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_10f06dcf-ac66-490d-872a-207fe0f4643a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_ce43943e-8847-4d4b-bf21-56fd417f4ad2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_10f06dcf-ac66-490d-872a-207fe0f4643a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_29baf483-349f-45fa-8205-a43563f99541" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_ce43943e-8847-4d4b-bf21-56fd417f4ad2" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_29baf483-349f-45fa-8205-a43563f99541" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_52727a26-258d-4a57-bd45-2dd97055fb2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_ce43943e-8847-4d4b-bf21-56fd417f4ad2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_52727a26-258d-4a57-bd45-2dd97055fb2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_fc94970d-94fc-49c7-ab2c-ad701d04829e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_ce43943e-8847-4d4b-bf21-56fd417f4ad2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_fc94970d-94fc-49c7-ab2c-ad701d04829e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_5839bb0d-7a0a-47a2-bbb7-c6ee76be04df" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_5839bb0d-7a0a-47a2-bbb7-c6ee76be04df" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_4a81620b-5179-4c94-8d7f-275eb9403cfa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_4a81620b-5179-4c94-8d7f-275eb9403cfa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_75d91839-0117-4bb7-be8a-670afd0dbb09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_75d91839-0117-4bb7-be8a-670afd0dbb09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_c6c41f35-f606-4c61-ab84-da7a7e774660" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_75d91839-0117-4bb7-be8a-670afd0dbb09" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_c6c41f35-f606-4c61-ab84-da7a7e774660" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_14ef3e98-108d-4922-828c-c73a03adffe6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_75d91839-0117-4bb7-be8a-670afd0dbb09" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_14ef3e98-108d-4922-828c-c73a03adffe6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_8dc9cfa3-5ca0-495e-af23-043310ece60c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_75d91839-0117-4bb7-be8a-670afd0dbb09" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_8dc9cfa3-5ca0-495e-af23-043310ece60c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_d04143ff-132e-4abb-b117-60136a003cec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_75d91839-0117-4bb7-be8a-670afd0dbb09" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_d04143ff-132e-4abb-b117-60136a003cec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_55a132ac-75b8-45db-902c-46b0e7f45c5f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_75d91839-0117-4bb7-be8a-670afd0dbb09" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_55a132ac-75b8-45db-902c-46b0e7f45c5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_a7267fdc-57d7-4f46-85d6-a2ed294b5146" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_a7267fdc-57d7-4f46-85d6-a2ed294b5146" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_c8ff21c4-acb5-49af-bce4-12d34b3e0dde" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_c8ff21c4-acb5-49af-bce4-12d34b3e0dde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_837fccce-a8dd-4f39-bc8e-d6c43b3c62ae" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_837fccce-a8dd-4f39-bc8e-d6c43b3c62ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_22ddb0f4-0e38-4fd3-90a0-0b7b3a823014" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_837fccce-a8dd-4f39-bc8e-d6c43b3c62ae" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_22ddb0f4-0e38-4fd3-90a0-0b7b3a823014" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_2085bc7c-2280-4865-b3f2-7b481057ff29" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_2085bc7c-2280-4865-b3f2-7b481057ff29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_983d6624-bc35-47d8-9a27-efc7ea75e4fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_621e823b-d353-4433-90cd-6550b32574b7" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_983d6624-bc35-47d8-9a27-efc7ea75e4fd" 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-20220930.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_EquityAbstract_c6f39221-96ca-4231-a27e-cef79a80d68f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2fb5469f-7765-4751-92d1-738d38db0595" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_c6f39221-96ca-4231-a27e-cef79a80d68f" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2fb5469f-7765-4751-92d1-738d38db0595" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_f704947a-46fd-4109-bb1d-81cec887e506" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2fb5469f-7765-4751-92d1-738d38db0595" xlink:to="loc_us-gaap_AwardTypeAxis_f704947a-46fd-4109-bb1d-81cec887e506" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_97911c74-2bd8-41ec-8117-9fa82f195d88" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_f704947a-46fd-4109-bb1d-81cec887e506" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_97911c74-2bd8-41ec-8117-9fa82f195d88" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_3ec48f22-5f17-4029-ab40-0bc43c85a8c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_97911c74-2bd8-41ec-8117-9fa82f195d88" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_3ec48f22-5f17-4029-ab40-0bc43c85a8c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2fb5469f-7765-4751-92d1-738d38db0595" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_7566f046-7cec-4758-a694-03ec3793fe46" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_7566f046-7cec-4758-a694-03ec3793fe46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_63e7800e-37a1-4413-9b16-9792a520a2ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_63e7800e-37a1-4413-9b16-9792a520a2ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_dc3d55ea-d9b7-4577-9092-0dc6b3db82f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_dc3d55ea-d9b7-4577-9092-0dc6b3db82f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_54ee6cf0-c151-4b1b-aeb8-f8b663c66ae4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_d2797b22-d81b-4633-8e34-09446a32a7e4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_54ee6cf0-c151-4b1b-aeb8-f8b663c66ae4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_f4e849fb-aa0e-4b13-8786-4d1bbb089e1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_f4e849fb-aa0e-4b13-8786-4d1bbb089e1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_47c23e84-905a-4ce7-af49-8e64c0c5e063" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_47c23e84-905a-4ce7-af49-8e64c0c5e063" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_3c31cc16-97a4-4b95-89e3-04abae3a7475" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_3c31cc16-97a4-4b95-89e3-04abae3a7475" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2645981a-953a-4727-939d-c42aa9f12ccc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_cb3a1370-df4c-4023-b5b0-98ae842b9738" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2645981a-953a-4727-939d-c42aa9f12ccc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_88bed84d-0f67-4037-a9bc-2998b00cdd95" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_f0deaa2c-e73e-44db-89a8-18d9ada2b619" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_88bed84d-0f67-4037-a9bc-2998b00cdd95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_49c369ea-f961-45d8-a19a-a25338434862" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_88bed84d-0f67-4037-a9bc-2998b00cdd95" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_49c369ea-f961-45d8-a19a-a25338434862" 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-20220930.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_1d9977c6-7e82-4a22-aad2-059bdd4998f3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentTable_1a1fc735-d889-4a51-a6e8-a769468c1b4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermPurchaseCommitmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_1d9977c6-7e82-4a22-aad2-059bdd4998f3" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentTable_1a1fc735-d889-4a51-a6e8-a769468c1b4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_915550c6-df53-43a2-96a3-9d31c3300d65" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentTable_1a1fc735-d889-4a51-a6e8-a769468c1b4a" xlink:to="loc_srt_StatementScenarioAxis_915550c6-df53-43a2-96a3-9d31c3300d65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_06d66e17-e462-4b80-9540-7536f40b74e5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_915550c6-df53-43a2-96a3-9d31c3300d65" xlink:to="loc_srt_ScenarioUnspecifiedDomain_06d66e17-e462-4b80-9540-7536f40b74e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_138270d2-660d-49d3-87e3-f502ef7f5ef8" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScenarioUnspecifiedDomain_06d66e17-e462-4b80-9540-7536f40b74e5" xlink:to="loc_srt_ScenarioForecastMember_138270d2-660d-49d3-87e3-f502ef7f5ef8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentLineItems_1436fd2b-a80f-4d61-9381-0e319c088b95" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermPurchaseCommitmentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentTable_1a1fc735-d889-4a51-a6e8-a769468c1b4a" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentLineItems_1436fd2b-a80f-4d61-9381-0e319c088b95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PurchaseObligation_fd10fe13-d46a-4a82-aea9-899c79c7bf9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PurchaseObligation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_1436fd2b-a80f-4d61-9381-0e319c088b95" xlink:to="loc_us-gaap_PurchaseObligation_fd10fe13-d46a-4a82-aea9-899c79c7bf9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentAmount_72bf9e12-a3ae-4c08-b58d-8f5f565f3478" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermPurchaseCommitmentAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_1436fd2b-a80f-4d61-9381-0e319c088b95" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentAmount_72bf9e12-a3ae-4c08-b58d-8f5f565f3478" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/OtherIncomeDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#OtherIncomeDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/OtherIncomeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndExpensesAbstract_d1e99a0c-6510-4fd7-9b7b-345abaf0af9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndExpensesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_c9c27952-b2b5-4086-9264-85213e57b6b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract_d1e99a0c-6510-4fd7-9b7b-345abaf0af9c" xlink:to="loc_us-gaap_DebtInstrumentTable_c9c27952-b2b5-4086-9264-85213e57b6b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_6ecb6da4-4640-4071-8809-a27fe977c3e7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_c9c27952-b2b5-4086-9264-85213e57b6b7" xlink:to="loc_us-gaap_DebtInstrumentAxis_6ecb6da4-4640-4071-8809-a27fe977c3e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_35b0bc88-538c-4c28-bb59-8726d8671ea1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_6ecb6da4-4640-4071-8809-a27fe977c3e7" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_35b0bc88-538c-4c28-bb59-8726d8671ea1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaycheckProtectionProgramCARESActMember_a1862fbe-f16c-4c51-bb25-7664b483179c" xlink:href="efoi-20220930.xsd#efoi_PaycheckProtectionProgramCARESActMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_35b0bc88-538c-4c28-bb59-8726d8671ea1" xlink:to="loc_efoi_PaycheckProtectionProgramCARESActMember_a1862fbe-f16c-4c51-bb25-7664b483179c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_c9c27952-b2b5-4086-9264-85213e57b6b7" xlink:to="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct_35fa3d13-be39-4d02-9df3-259a51588833" xlink:href="efoi-20220930.xsd#efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct_35fa3d13-be39-4d02-9df3-259a51588833" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent_8ccaa1dd-db06-4a79-841f-c30debf0f42d" xlink:href="efoi-20220930.xsd#efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent_8ccaa1dd-db06-4a79-841f-c30debf0f42d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLoanOriginations1_0ef3ba40-dc35-455b-839e-dc3c859d3672" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromLoanOriginations1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_us-gaap_ProceedsFromLoanOriginations1_0ef3ba40-dc35-455b-839e-dc3c859d3672" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_11c6f957-9d42-4fd1-be76-0ed36302d27b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_11c6f957-9d42-4fd1-be76-0ed36302d27b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_GainLossOnForgivenessOfDebt_cb35f91a-b60f-4497-8b9f-4346219eb520" xlink:href="efoi-20220930.xsd#efoi_GainLossOnForgivenessOfDebt"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_659a0974-e6c9-42fb-9853-b85fc50f43ee" xlink:to="loc_efoi_GainLossOnForgivenessOfDebt_cb35f91a-b60f-4497-8b9f-4346219eb520" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails" xlink:type="simple" xlink:href="efoi-20220930.xsd#RelatedPartyTransactionDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_be68f89b-98fc-4948-b487-4c96c0cd5864" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_be68f89b-98fc-4948-b487-4c96c0cd5864" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_c031f334-a941-4f4b-82dc-f2a785348aeb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_c031f334-a941-4f4b-82dc-f2a785348aeb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_3c5c6be8-71c8-4a7f-b48b-cbad5c274e32" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_c031f334-a941-4f4b-82dc-f2a785348aeb" xlink:to="loc_us-gaap_RelatedPartyDomain_3c5c6be8-71c8-4a7f-b48b-cbad5c274e32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember_2cea4d91-e9f6-4fbb-bfc0-153c98ba9c2b" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_3c5c6be8-71c8-4a7f-b48b-cbad5c274e32" xlink:to="loc_srt_DirectorMember_2cea4d91-e9f6-4fbb-bfc0-153c98ba9c2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis_01332395-9de1-4aac-b694-83f400d6e4b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:to="loc_us-gaap_RelatedPartyTransactionAxis_01332395-9de1-4aac-b694-83f400d6e4b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_78caf3c2-01fb-4448-8271-1ef2b267b896" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_01332395-9de1-4aac-b694-83f400d6e4b4" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_78caf3c2-01fb-4448-8271-1ef2b267b896" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2022PromissoryNoteMember_00b58887-4357-4714-b7eb-b0c3cbecf566" xlink:href="efoi-20220930.xsd#efoi_A2022PromissoryNoteMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_78caf3c2-01fb-4448-8271-1ef2b267b896" xlink:to="loc_efoi_A2022PromissoryNoteMember_00b58887-4357-4714-b7eb-b0c3cbecf566" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementScenarioAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:to="loc_srt_StatementScenarioAxis_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_f66e7468-36b7-4f7b-bc62-94f58adf49b6" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_4690fbe3-05f1-44e6-88ae-e4cca3ef1d00" xlink:to="loc_srt_ScenarioUnspecifiedDomain_f66e7468-36b7-4f7b-bc62-94f58adf49b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_93d458f8-8b5c-4172-9d53-f044e4980664" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ScenarioForecastMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScenarioUnspecifiedDomain_f66e7468-36b7-4f7b-bc62-94f58adf49b6" xlink:to="loc_srt_ScenarioForecastMember_93d458f8-8b5c-4172-9d53-f044e4980664" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4e3ed6d2-8003-489d-8d79-986686906728" xlink:to="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_c40b07ba-9622-46ce-802e-f42b55a4f574" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:to="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_c40b07ba-9622-46ce-802e-f42b55a4f574" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionRate_8cf32c67-f64a-4d71-b711-df47296d73c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionRate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:to="loc_us-gaap_RelatedPartyTransactionRate_8cf32c67-f64a-4d71-b711-df47296d73c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_1aa537be-a33e-41ff-85a2-3b79e900b204" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DueToRelatedPartiesCurrentAndNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_c629efb6-6f5a-4d1a-89c1-9492f336bbce" xlink:to="loc_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent_1aa537be-a33e-41ff-85a2-3b79e900b204" 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-20220930.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_d94300d4-95f4-483d-b334-f9fd9de8dff4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_d94300d4-95f4-483d-b334-f9fd9de8dff4" xlink:to="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_ac9125a6-2846-40b7-b46f-3b5b132647a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_ac9125a6-2846-40b7-b46f-3b5b132647a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_f82ff909-fdd9-4af7-94e4-355588ece23b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_ac9125a6-2846-40b7-b46f-3b5b132647a3" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_f82ff909-fdd9-4af7-94e4-355588ece23b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_ebdf75e8-3bb1-4bc7-9e9a-4249763fdb69" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_f82ff909-fdd9-4af7-94e4-355588ece23b" xlink:to="loc_us-gaap_SubsequentEventMember_ebdf75e8-3bb1-4bc7-9e9a-4249763fdb69" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis_c5678350-cbc5-47c7-8b17-a0e820ac9d4a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_RelatedPartyTransactionAxis_c5678350-cbc5-47c7-8b17-a0e820ac9d4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_2aaabed3-9339-46e0-96c5-997fa347f850" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_c5678350-cbc5-47c7-8b17-a0e820ac9d4a" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_2aaabed3-9339-46e0-96c5-997fa347f850" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_HuangNoteMember_df3d0956-41c8-4d07-8f35-ddd81b8444bc" xlink:href="efoi-20220930.xsd#efoi_HuangNoteMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_2aaabed3-9339-46e0-96c5-997fa347f850" xlink:to="loc_efoi_HuangNoteMember_df3d0956-41c8-4d07-8f35-ddd81b8444bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_0f4db764-1903-4259-b301-3db580bcc5ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_0f4db764-1903-4259-b301-3db580bcc5ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_1b584ea4-437c-42c2-b326-1b0f5e9fcc07" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_0f4db764-1903-4259-b301-3db580bcc5ba" xlink:to="loc_us-gaap_RelatedPartyDomain_1b584ea4-437c-42c2-b326-1b0f5e9fcc07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_DirectorMember_970f73c6-589b-437c-a261-317b6f276f81" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_DirectorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_1b584ea4-437c-42c2-b326-1b0f5e9fcc07" xlink:to="loc_srt_DirectorMember_970f73c6-589b-437c-a261-317b6f276f81" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_2cc977a7-eb78-48e0-b26d-f4735777b5fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_DebtInstrumentAxis_2cc977a7-eb78-48e0-b26d-f4735777b5fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_f1cb9c48-1987-4fa9-9dff-7fa2f777f5da" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_2cc977a7-eb78-48e0-b26d-f4735777b5fd" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_f1cb9c48-1987-4fa9-9dff-7fa2f777f5da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OctoberPartitionedNoteMember_cf8225c3-4992-487e-96c6-4c9365855965" xlink:href="efoi-20220930.xsd#efoi_OctoberPartitionedNoteMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_f1cb9c48-1987-4fa9-9dff-7fa2f777f5da" xlink:to="loc_efoi_OctoberPartitionedNoteMember_cf8225c3-4992-487e-96c6-4c9365855965" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2021StreetervilleNoteMember_da48ebf3-9d6d-4a8b-bbcc-a696f3b2a644" xlink:href="efoi-20220930.xsd#efoi_A2021StreetervilleNoteMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_f1cb9c48-1987-4fa9-9dff-7fa2f777f5da" xlink:to="loc_efoi_A2021StreetervilleNoteMember_da48ebf3-9d6d-4a8b-bbcc-a696f3b2a644" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PromissoryNoteAxis_3f7a1f96-7530-48fd-a664-8d4b37fab443" xlink:href="efoi-20220930.xsd#efoi_PromissoryNoteAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_efoi_PromissoryNoteAxis_3f7a1f96-7530-48fd-a664-8d4b37fab443" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PromissoryNoteDomain_af0ab9ee-acfd-4620-bc38-573e12b0c00f" xlink:href="efoi-20220930.xsd#efoi_PromissoryNoteDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_PromissoryNoteAxis_3f7a1f96-7530-48fd-a664-8d4b37fab443" xlink:to="loc_efoi_PromissoryNoteDomain_af0ab9ee-acfd-4620-bc38-573e12b0c00f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PartitionedNoteMember_1ed9b2b4-4b38-48f6-9f43-a22b00308172" xlink:href="efoi-20220930.xsd#efoi_PartitionedNoteMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_PromissoryNoteDomain_af0ab9ee-acfd-4620-bc38-573e12b0c00f" xlink:to="loc_efoi_PartitionedNoteMember_1ed9b2b4-4b38-48f6-9f43-a22b00308172" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfArrangementAxis_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TypeOfArrangementAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_TypeOfArrangementAxis_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_a5d5966a-28a5-46a5-ada2-a19d3d9b4d2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ArrangementsAndNonarrangementTransactionsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfArrangementAxis_ec9cbc5f-7fe8-4ce4-8241-f70bdc16c334" xlink:to="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_a5d5966a-28a5-46a5-ada2-a19d3d9b4d2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ExchangeAgreementMember_f5ed6a0f-2be4-4a1d-933e-a273ace2f9fc" xlink:href="efoi-20220930.xsd#efoi_ExchangeAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ArrangementsAndNonarrangementTransactionsMember_a5d5966a-28a5-46a5-ada2-a19d3d9b4d2a" xlink:to="loc_efoi_ExchangeAgreementMember_f5ed6a0f-2be4-4a1d-933e-a273ace2f9fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_abeda691-5cd9-4749-8bdb-d4aa13e1a303" xlink:to="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_ab86b7f6-c393-422d-b7cf-f8a422058dc6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_ab86b7f6-c393-422d-b7cf-f8a422058dc6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_de87f01b-d6ef-47b2-87f8-32ae6a608363" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_de87f01b-d6ef-47b2-87f8-32ae6a608363" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_636fc69f-d30e-43a3-8da1-259365e97e91" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_636fc69f-d30e-43a3-8da1-259365e97e91" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_13ca7983-b4a5-401e-a444-0d6b8c46353a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_13ca7983-b4a5-401e-a444-0d6b8c46353a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_637b08b3-a2ad-4d3e-9f5b-60b44d16eb9c" xlink:href="efoi-20220930.xsd#efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_90a2dd3d-20c4-4244-b8bc-6da71e26c8e5" xlink:to="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_637b08b3-a2ad-4d3e-9f5b-60b44d16eb9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>13
<FILENAME>ef_logoxtaglinelockupxcmyka.jpg
<TEXT>
begin 644 ef_logoxtaglinelockupxcmyka.jpg
M_]C_X  02D9)1@ ! 0$!+ $L  #_X0".17AI9@  34T *@    @  @$2  ,
M   !  $  (=I  0    !    )@      !) #  (    4    7) $  (    4
M    <)*1  (    #,#   )*2  (    #,#         R,#$Y.C T.C U(# Y
M.C,P.C(V #(P,3DZ,#0Z,#4@,#DZ,S Z,C8   #_X0&<:'1T<#HO+VYS+F%D
M;V)E+F-O;2]X87 O,2XP+P \/WAP86-K970@8F5G:6X])^^[OR<@:60])U<U
M33!-<$-E:&E(>G)E4WI.5&-Z:V,Y9"<_/@T*/'@Z>&UP;65T82!X;6QN<SIX
M/2)A9&]B93IN<SIM971A+R(^/')D9CI21$8@>&UL;G,Z<F1F/2)H='1P.B\O
M=W=W+G<S+F]R9R\Q.3DY+S R+S(R+7)D9BUS>6YT87@M;G,C(CX\<F1F.D1E
M<V-R:7!T:6]N(')D9CIA8F]U=#TB=75I9#IF868U8F1D-2UB83-D+3$Q9&$M
M860S,2UD,S-D-S4Q.#)F,6(B('AM;&YS.GAM<#TB:'1T<#HO+VYS+F%D;V)E
M+F-O;2]X87 O,2XP+R(^/'AM<#I#<F5A=&5$871E/C(P,3DM,#0M,#54,#DZ
M,S Z,C8\+WAM<#I#<F5A=&5$871E/CPO<F1F.D1E<V-R:7!T:6]N/CPO<F1F
M.E)$1CX\+W@Z>&UP;65T83X-"CP_>'!A8VME="!E;F0])W<G/S[_VP!#  8$
M!08%! 8&!08'!P8("A *"@D)"A0.#PP0%Q08&!<4%A8:'24?&ALC'!86("P@
M(R8G*2HI&1\M,"TH,"4H*2C_VP!# 0<'!PH("A,*"A,H&A8:*"@H*"@H*"@H
M*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"C_P  1
M" %Y I4# 2(  A$! Q$!_\0 'P   04! 0$! 0$           $" P0%!@<(
M"0H+_\0 M1   @$# P($ P4%! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!
MD:$((T*QP152T? D,V)R@@D*%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I3
M5%565UA96F-D969G:&EJ<W1U=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6F
MIZBIJK*SM+6VM[BYNL+#Q,7&Q\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T
M]?;W^/GZ_\0 'P$  P$! 0$! 0$! 0        $" P0%!@<("0H+_\0 M1$
M @$"! 0#! <%! 0  0)W  $" Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S
M4O 58G+1"A8D-.$E\1<8&1HF)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC
M9&5F9VAI:G-T=79W>'EZ@H.$A8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.T
MM;:WN+FZPL/$Q<;'R,G*TM/4U=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H
M# ,!  (1 Q$ /P#ZIHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** (;VY2SLY[F4,4A0R,%ZD 9XKE?^%@Z5_SPOO^^%_^*K?\2?\
M(OZE_P!>TG_H)KPZO(S'&5</**I]3EQ%:5-I1/4O^%@Z5_SPOO\ OA?_ (JC
M_A8.E?\ /"^_[X7_ .*KRVBO._M;$=U]QS_6JAZE_P +!TK_ )X7W_?"_P#Q
M5'_"P=*_YX7W_?"__%5Y_HNB7VLS;+*+*@_-(W"+]3_2O1M#\$Z?8!9+P?;)
M^OSCY!]%[_C79AL1C<1K&R7>QK3G6J;$^G>+(-1;%EINIS#IN$2A1^);%=!"
M[/&&:-XR?X6(R/R)%.1510J*%4#  & *6O8IQG%>_*[]+'7%-;L****T*"BB
MB@ HHHH **** "BBB@ HHJAKNIQZ1I<UW+SL&%7/WF/05,I*$7*6R$VDKLOT
M57T^5I["VFDQODB5VQZD U8IIW5T-!1113 **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH SO$G_ "+^I?\ 7M)_Z":\.KW'Q)_R+^I?]>TG_H)KPZOG
MLY_B1]#@Q?Q(*ZSPAX3DU8K=7NZ*Q!X'1I?IZ#WIO@?PT=7N/M5VI%C$W3_G
MHWI]/6O5T544*@"JHP !@ 4LOR_VO[VKMT7<*%#F]Z6Q':6T-I;I!;1K%$@P
MJJ, 5+15'5]5M-)M3/>RA%Z*HY9CZ 5] W&G&[T2.YM11>JG?ZI8Z>,WMU#"
M>NUFY/X=:\TU[QM?W[-'9$V=OT^4_.WU;M^%<J[,[%G8LQ.22<DUX]?.(Q=J
M2OYG+/%I:11ZM=>/-'A.(OM$_ND>!_X\15-OB)99^6RN"/<J*\THKAEFN(>S
M2^1@\54/34^(=@?OVET/IM/]:MP>.]&D^^UQ%_OQY_D37D]%"S;$+>S^0+%5
M#V:'Q9HDOW=0C'^\K+_,597Q!I#=-2M/QE KQ"BMEG-7K%%?6Y=CV]O$&D+U
MU*T_"4&H)/%6B1_>U"(_[H+?R%>+T4/.:O2*'];EV/6YO'&B1_<FFE_W(B/Y
MXK2T'65UJ%Y[>VGBMP=H>7 W'V )KQ6WB:>XCAC&7D8(H]23@5[OIUI'8V,%
MK",)$@4>_O79@,56Q4FY621K0JSJ.[V+%>9?$[4S/J45A&W[NW&YQZN?\!_,
MUZ7+(L43R2'"(I9CZ 5X/J-TU]?W%U)]Z:0N?;)Z4LWK<E)4UU_0,5.T>7N>
MWZ/_ ,@BQ_ZX)_Z"*MU4T?\ Y!%C_P!<$_\ 015NO4I_ CICL%%%%6,****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH SO$G_ "+^I?\ 7M)_Z":\=T+3
M)=7U.&TAR-QR[8^ZHZFO8O$G_(OZE_U[2?\ H)K ^&^D_9-*-[*N)KKE<]D'
M3\^OY5Y.,P_UC$PB]K:G+6I^TJ)'4V-K%96D5M;*$BC7:HJ>BHKJXCM+:6>=
M@D4:EF/H!7JZ17DCIT2,[Q)K<&AV)FF^>5N(H@>7/^'J:\>U74;G5+QKF\D+
MR-T'91Z =A4_B'5I=9U.2ZER%^[&G]Q>PK-KY7'8UXB5H_"OZN>;6K.H[+8*
M***X# **** "BBB@ HHHH **** .A\ V?VOQ-;$C*0@S-^'3]2*]AK@_A98[
M+:[OG'^L81(?8<G]2/RKO*^HRNER4$WUU/2PT>6%^YS_ (\O?L?AFZP</-B%
M?QZ_IFO':[WXJ7NZ>SL5/W%,KCW/ _D?SK@J\C-:O/7:[:'+B9<T[=CW?1_^
M018_]<$_]!%6ZJ:/_P @BQ_ZX)_Z"*MU]-3^!'HQV"BBBK&%%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 5M2MOMFGW-MG;YT;1Y],C%30QI#"D48"H
MBA5 [ =*?12Y5?F%;6X5P?Q0U0QP0:;$W,G[V7']T'@?GD_@*[RO$?%%\=1U
MZ\N,Y0R%4_W1P/Y5YN:UO9T>5;R.?$SY8674RZ***^8/."BBB@ HHHH ****
M "BBB@ J2V@DN;B."!2TLC!% [DU'7I'P\\.M;*-4O4Q*XQ A'*J?XOJ?Y?6
MNC"X>6(J*"^9I2INI*R.NT:P33-+M[./D1)@GU/4G\\U<)P,GI17.>/-5&FZ
M'(B-BXN<Q)Z@?Q'\OYBOK9SC0IN71(]234(W['F?B74/[3UR[N@<HSX3_='
M_05F445\9.;G)R>[/(;;=V>[Z/\ \@BQ_P"N"?\ H(JW531_^018_P#7!/\
MT$5:9@BEG(55&22< "OM:?P(]B.PM%5/[3L/^?VU_P"_J_XTJZE8LP"WEL2>
M !*O/ZT^>/<.9%JBBJU]?VMA'YE[<1PKVWMC/T]:;:BKL;=MRS17+W'CK18F
MPCSS>Z1_XXID/CS1G;#&YC'JT?\ @37/]<H7MSHS]M#N=715+3=5L=27-C=1
MS<9*@X8?4'FKM;QDI*\7=%IIZH****H84444 %%-EE2&,O*ZHB\EF. /QK#N
MO%NB6S%6O5=AVC4O^H&*SG5A3^-I$N2CNS>HKE&\>:,#Q]I/N(__ *]30^-]
M$D.&GDC_ -^)OZ9K)8R@].=?>3[6'<Z6BJ=AJEC?C_0[N&8XSM5AD?AUJY71
M&2DKQ=RTT]4%%%%,845%<7$-M'YES+'#'G&Z1@H_,U5_MG2_^@C9_P#?]?\
M&I<XQT;$VEN7Z*J6^I6-S*([>\MI9#R%256)_ &K=-24M4P33V"BLG4_$6E:
M:Q2ZO$\P=43YV'U Z?C6,_Q TE6PL5X_N(U_JU83Q5&F[2DB'5A'1LZ^BJVF
M7L>HV,-W '$<HW*'&#5FMTU)71HG=70445EZEK^EZ:Q6[O(UD'5%^9A^ Z4I
MSC!7D[(3:6K-2BN1D\?Z0APL=X_NL:_U:G0>/='D;#BZA'J\8(_0FN?Z[A[V
MYT9^VI]SK**IZ=J=EJ4>^QN8Y@.H4\CZCJ*M2.L<;/(RJBC+,QP /4UT*2DN
M9/0T335T.HJC_;&F?]!&S_[_ *_XTJZMISL%6_M&8G  F4DG\Z7M(=T',NY=
MHHKE]1\;:?I]]-:W%O>^;$VUL(N#[CYNE35K0I*\W84IQCK(ZBBN._X6%I7_
M #[WW_?"?_%5K^'_ !)9:[),EHLR/$ Q$J@9!],$_P"340Q=&I+EC*[)56$G
M9,VJ***Z#0**** "BD8A5)8X &23VKD#\0=)!(\B]/N$7G_QZLJM>G1M[1VN
M3*<8_$SL**X[_A86E?\ /O??]\)_\574Z==K?V,-U&DB),N]5D #8/3H32I8
MBE5=J<KBC4C+2++%%%%;%A1110 4444 %%%% !1110 4444 %%%% !1110!5
MU:<VVEWDZ]8X7<?4 FO!Z]SUZWEN]'N[:W ,LT9C7)P.>*YFQ^'MBD8^V7,\
MLG?R\(O\B:\C,<+5Q,XJ"T2.3$4Y5))1/,J*]7;P'HY''VD>XD_^M5:;X>Z<
MP_=75VA_VBK#^0KSGE.(7;[S#ZK4/,:*] F^'+?\L-2!]GAQ^H-4)OA]JB?Z
MN>TD'^\P/\JQEE^)CO AT*BZ''45TDG@G7$^[;(_^[*O]2*A;PCK@_Y<&_"1
M#_6LGA:ZW@_N9/LI]C!HK>7PAKK=+!A]9$']:MV_@3693^\6"'_?DS_+--82
MO+:#^X%2F^ARU.BC>:18XD9W8X55&23]*]"T_P"': AM0O6;U2%<?J?\*Z[2
M=%L-*7%C;)&V,%SRQ_$\UV4<IK3?O^ZC:&%F_BT.2\(^"_*=+S6%!<?,EOU
M]V_PKO:*"<#)X%>_A\/##QY8([H4XTU9#99$AB>25@D: LS$X  [UXQXKUEM
M:U9YQD0)\D*GLOK]3UK;\=>*!?LVGZ>^;53^\D'_ "T/H/;^=<77AYGC55?L
MJ;T7XG%B:W,^6.P4445Y!RGN^C_\@BQ_ZX)_Z"*DU"/SK"YC_OQ,OY@U'H__
M ""+'_K@G_H(JTW*GZ5]M%7@EY'L+8^?J?;OY=Q&_P#=8']:8PPQ'O17Q.QX
MYZQXQ\5)HZ_9K3;)?,,\\B,>I]_;_)\MO+N>]N&FNY7EE;JS'-6]-L;S7M4\
MJ(F2:0EWD<\ =R:](TSP1I-K&/M*-=R]V=B!^ ']<UZTHXC,I.2TBON_X<ZF
MJF(=UL>345[1)X6T61=K:?$/]W*G]#7%^,/!PTVW:]TUG>W7_61MR4'J#W%9
M5\LK48\^C2[$SPTXJYQT,LD$JRPNT<BG*LIP17J/@CQ0=67['?$"]095NGFC
M_&O*ZGT^[DL;Z"ZA.)(G#CW]JPPF*EAYIK;J12JNG*_0][HJ.WF6XMXIH^4D
M4.OT(S4E?8)WU1ZH5@>*O$D&A6X4 2WD@S'%GH/[Q]OYUKZA=QV%C/=3G$<2
M%S[^U>'ZI?3:E?37=R<R2-GV [ >PKS<QQCP\5&'Q/\  Y\16]FK+<DU;5KW
M59O,OIVDYX7.%7Z"J-.BC>61(XE+.Y"JHZDGM7JWAGP?::= DM_&ES>$9.\9
M5/8#^M>%A\-5QDW9^K9Q4Z<JK/*4C=QE$9A[#--((.#P:^@54*H"@ #H *JZ
MAIMGJ,92]MHY@1C++R/H>HKT99*[>[/7T-W@]-&>$H[(X9&*LIR"#@BNW\*^
M-9H9$M=8<RP'Y5G/WD_WO4>_6LCQAX=;0[M3$6>SESY;'JI_NFN>KS8SK8.K
M9:-'.G.C(^@5(905(((R".]+7&_#75FN]-DL9FS+;8V$]2AZ?D?YBNRKZJA6
M5:FJD>IZ<)J<5)'._$"/S/"MX>I0HW_CPKQ^O;?%2>9X;U('M S?D,_TKQ*O
M"SF-JL7Y'%BU[R9N^!IO)\4V!/1F9/S4BMWQOXLE>XDT_3)#'$AVRRJ>7/<
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
MG)]&Z_KD5X><T=(U5Z'%BX;2,:WE>">.:,X>-@ZGT(.17O%C<I>64%S']R5
MX_$9KP2O5?AK??:=!-NQR]JY7_@)Y']?RK#)ZO+4=-]?T(PDK2<>YUM<!\5+
M[$=G8*>6)F<?HO\ [-^5=_7B_C*^^W^(KR0'*(WE)]%X_GD_C7H9K5Y*'*NI
MT8F7+"W<Q:[WX6:?NFN]0<<(/)0^YY/]/SK@J]K\)V']F^'[2 C$A7S)/]YN
M3^73\*\K*J/M*_,]HG+AH<T[]C7HHHKZ@](**** "BBB@ HHHH **** "O)/
MCO\ &2S^&UI'96427WB*Y3?%;L?DA3H)),<XSG"CDX/(KUNOS:^+FN3>(OB7
MXDU*=R^^]DCCSVC1MB#\%44 1>,_B#XI\9W#R>(=9NKF-CD6X?9"GTC&%_'&
M?>N5HKT#X7?"?Q+\1Y9'T:&*#3X6V2WURQ6)6Z[1@$LV.P'&1G&10!Y_7Z"?
MLQ_\D-\,?[D__I1+7ENF_LEVJQJ=3\5SN^/F6WLPH!]B6.?RKZ ^'OA6W\$^
M#].\/6=Q+<P60<++* &;<[.<XXZL: -'Q)_R+^I?]>TG_H)KG/AIJWVG3WT^
M5OWMO\R9[H3_ $/\Q71^)/\ D7]2_P"O:3_T$UXUI&H3:7J,-W;GYXSDCLP[
M@_6O(QN(^KXF$^EM?0Y:U3V=1,]VJGK&GQ:IIL]G/]V1< _W3V/X&GZ;?0ZC
M8Q75LVZ.1<CU'J#[BK->K[M2/=,Z=)(\%U"SFT^]EM;E=LL3;2/7W'M5>O7/
M&?AM=:M_.M@%OHA\I/ D']T_TKR:>*2"9XID:.1#AE88(-?)8S"2PT[=.C/+
MK4G3?D,HHHKD,@HHHH **** "BBB@ KI_ F@G5=1%Q.G^AVY!;(X=NR_X_\
MUZS_  WH-SKEX$B!2!3^]F(X4?U/M7L6FV,&G6<=K:ILBC&!ZGW/O7J9=@G6
ME[2:]U?B=.'H\SYGL6:**S?$.K1:-I<MU+@L/EC3/WV["OI)S4(N4MD>@VDK
MLX[XG:ON:+2X6^[B2;'K_"/Z_E7 5+=7$EU<R3SL7ED8LS'N345?'8FN\15=
M1GDU)N<G(]WT?_D$6/\ UP3_ -!%6F^Z?I571_\ D$6/_7!/_015IONGZ5]A
M3^!'K+8^?W^\?K2#J*5_O'ZT@ZBOB#QCZ!7[H^E+2+]T?2EK[H]H**** /$_
M%W_(RZC_ -=C636MXN_Y&74?^NQK)KXJO_%EZL\>?Q,]I\'?\BQIW_7+^IK9
MK&\'?\BQIW_7+^IK9KZ_#_PH^B_(]6G\*/)OB4FWQ,Q_OPHW\Q_2N6KN/BK!
MMU&QN.SQ%/\ ODY_]FKAZ^6QT>7$37F>;75JC/4OA=_R+\__ %\M_P"@K785
MPOPIG#6-];YY219,?48_]EKNJ^CP#OAX6/0H.]-!11178:A15'7+[^S-)NKS
M 8Q)D ]">@'YXK@O^%B7G_/E;_\ ?35RU\92P[4:CU,YU8P=I'I=%>?:5XZO
M+[4[6U-G !-*L9()R 3@FO0:NAB:>(3=-[#A4C45XF=XD_Y%[4_^O:3_ -!-
M>'5[CXD_Y%[4_P#KVD_]!->'5XN<_''T./%_$B_X>_Y#^F?]?47_ *&*]SKP
MSP]_R'],_P"OJ+_T,5[G6^3?!+U+PFS"BBBO:.P*\*UU/+UO4$_NW$@_\>->
MZUXUXYM_L_BB^&,!V$@]\@'^>:\?.8WIQEYG)BU[J9A5[3X-D\SPOIS>D>W\
MB1_2O%J]6^&ET)O#ODY^:WE9<>Q^8?S-<63RM7:[HQPC]^QUE%%%?2GHA6-X
MRD\KPQJ+'O'M_,@?UK9KD/B;=B'04MP?FN)0,?[*\G]<5SXN?)0G+R,ZKM!L
M\LK8\'?\C/IW_77^E8];'@[_ )&?3O\ KK_2ODL/_%CZK\SRZ?Q(]JHHHK[4
M]@*XCXH:?YNGV]\@^:!MC_[K=/U_G7;U5U6S74--N;23I,A7/H>Q_ UABJ/M
MJ4H=R*D>>+B>#UUGPUOOLVO_ &=CA+E"G_ AR/ZC\:Y6:-H97CD&UT8JP/8C
MK4EC<O9WD%S%]^)PX_ YKY*A4=&K&?9GE0ER23/;=>O1IVCW=UG!CC)7_>/
M_4BO#"<G)Y->C?$K5$DT>Q@@;*W1$WU0#C]2/RKSFN_-JW/54%LE^9OBI\TK
M+H:WA73_ .TM>M+=AF/=OD_W5Y/Y]/QKVRN!^%EAMBN]0<<L?)0^PY;^GY5W
MU>EE5'V='F>\CHPL.6%^X4445Z9TA1110 4444 %%%% !1110 5^76O_ /(=
MU'_KYD_]"-?J+7Y=:_\ \AW4?^OF3_T(T 4*_27X0Z)#X=^&?AO3H$";+&*2
M7 ZR.H=S^+,:_-JOU%T  :#IH' %M&/_ !T4 7Z*** ,[Q)_R+^I?]>TG_H)
MKPZO<?$G_(OZE_U[2?\ H)KPZOGLY_B1]#@Q?Q(Z3P7XC;1;ORK@EK&4_..N
MP_WA_6O7(I$EC62)E>-AN5E.017S_73^$/%4NC.+>ZW2V#'IU,?N/;VJ,OS#
MV/[JI\/Y?\ 5"OR^[+8];K#\2>&K/6X]T@\JZ PLRCGZ$=Q6M9W4%Y;I/:RK
M+$XRK*:FKZ"<(5H\LE=,[FE)69XMK?AO4=(8FXA+P#I-'\R_CZ?C6-7T%UZU
MAZCX5T>_):2T6.0_QPG8?TX_2O%KY.[WHR^3.2>$ZP9XS17I%S\.[9C_ *-?
MS1CTD0/_ "Q5%_AU<@_)?PD>Z$5PRRW$Q^S^*,'AZBZ'"T5WD7PZG)_>ZA&H
M_P!F,G^HK3L_A]I\1!NKB><CL,(#_,_K3CEF)E]FWS&L-4?0\RC1Y'5(U9W8
MX"J,DUV/A[P-<W3+-JN;:#KY8^^W^'\Z]!TW2;#35Q8VL41Q@L!EC]2>:O5Z
M6'RB,'S57?RZ'13PJ6LM2"RM(+&V2WM(EBA08"J*GHJO?WEO86KW%W*L42]6
M/\AZFO7]V"[)'5HD/N[F*TMI)[EQ'%&-S,>U>.>*M=DUS4#)REM'E88SV'J?
M<U/XL\2S:Y/Y<>Z*R0Y2/NWNWO\ RKGJ^;S#'^W?LZ?P_F>?7K\_NQV"BBBO
M+.8]WT?_ )!%C_UP3_T$5:;[I^E5='_Y!%C_ -<$_P#015IONGZ5]O3^!'LK
M8^?W^\?K2#J*5_O'ZT@ZBOB#QCZ!7[H^E+2+]T?2EK[H]H**** /$_%W_(RZ
MC_UV-9-:WB[_ )&74?\ KL:R:^*K_P 67JSQY_$SVGP=_P BQIW_ %R_J:V:
MQO!W_(L:=_UR_J:V:^OP_P#"CZ+\CU:?PHY3XD6)NM \]!E[9PY_W3P?Z'\*
M\HKW^>))X9(I5#1R*593W!ZUXGXBTB71M3DMI 3'G=$_]]>WX^M>+F^':DJR
MV>C./%PUYT7/!.KKI&M(\QQ;S#RY#_=ST/X'],U[&I#*"I!!Y!'>OGVN@T/Q
M;J6DQK"C+/;KTCEYV_0]1667Y@J"]G4V%0KJ"Y9;'L5%>?+\1OE^;3.?:?\
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
MHS@JP_SR.XKW;]JWX6VOA74;?Q-X?MU@TK4)#%<6\8PD$^"05'96 /'0$'U
M'SW0!^C/P8\?V_Q%\$6VK*$BOXSY%[ O2.8 9(_V6!##ZXZ@UW=?$/[(/BM]
M%^)3:-+)BSUJ$Q;2< 3("Z'\MZ_\"%?;U !7F_QY^(J?#KP1+>6Y1M8NR;>P
MC;GY\<N1Z*.?K@=Z](KX3_:P\5/X@^*EQ81R%K+1HQ:1@'CS#\TA^N3M_P"
M"@#Q^_O+G4+V>\OIY+BZG<R2RR-N9V)R23ZU7HKZ5_9+^%MIKDDOC#Q!;+/:
M6TOE6$$BY1Y!]Z0@]0N0![Y]* /,/"/P7\=^*K6.[T[0Y8K.092>[=8%8'H0
M&(8CW (KI[G]F;XA0PEXXM+G;'^KCN\-_P"/ #]:^YZ* /S)\7>$/$'A"]%K
MXDTJYT^5L[#*N4DQUVN,JWX$U@U^G?B_PSI7B[0;G1]=M4N;.=<$$?,C=G4]
MF'8U^<WQ!\+W/@SQEJN@7C;Y+*;8LF,>8A 9&_%2#^- '>?L\?%6Y\ >)8K'
M49V;PU?2!;F-CD0,>!,OICC=ZCW K[U5@RAE(*D9!!R#7Y65^@W[-OB.3Q)\
M(-$FN'+W-FK6,I/_ $S.%_'9LH ].IDW^ID_W33Z9-_J9/\ =- 'Y8/]]OK2
M+]X?6E?[[?6D7[P^M 'ZG6O_ !ZP_P"X/Y5+45K_ ,>L/^X/Y5+0 4444 ?G
M5\?/^2R>+/\ K];^0K@*[_X^?\ED\6?]?K?R%<!0!^B_P%_Y(YX2_P"O%/YF
MN]K@O@+_ ,D<\)?]>*?S-=[0!#>W4%C9SW=W*D-M!&TLLCG"HJC))/H *_/[
MXY?%._\ B/XBD\N22'P_:N196F< CIYCCNY_0' [D_3G[7'B&71?A/):6SE)
M=6NDLV(."(\%V_/8%/LU?"U !7I7P]^"OC/QS:I>Z;8QVFFO]R\OG,4;^Z@
MLP]P,>]1_L_^$;;QI\4=+TW44\S3X@UU<Q_WT09"GV+;0?8FOT,BC2*-(XD5
M(T 5548"@= !Z4 ?';_LH>)A#E-?T8S8^Z1*%_/;_2O+OB'\)_%O@%?.UW3P
MU@6VB]M6\V'/8$]5_P"! 9K]%ZKZC96VI6-Q97\$=Q:7"&.6*1=RNI&""* /
MRSKI?A]XRU;P+XEMM9T28I+&<2Q$_)/'GE''<']#@CD5<^+OA,>"?B)K.A1%
MFMK>4/;LW),3@.F3W(# $^H-<=0!^G?@WQ%9>+/"^G:YI;$VE[$)%!ZH>C*?
M=2"#[BMFOG3]BG69+OP1K>DR,66PO5ECR?NK*O0?BC'\:^BZ "BBB@ HHHH
M**** "LSQ/"\_A^_2+._R69<=<CG^E:=!&1@\BIG'GBXOJ)JZL>!?:9_^>TG
M_?1H^TS_ //:3_OHUJ^+=&?1M6DC"G[-(2\+=MOI]1TK%KXNI&=.3A+='D23
MB[,]L\*WJW_A^RE5LL(Q&_LRC!_E^M:U>+>&_$-UH4S&$"6W<Y>%C@'W'H:[
MF#X@:6Z9FANHWQR-H8?GFOHL+F-*5-*H[-'?2Q$7&TGJ=A7&_$^]6'1X;0']
MY/("1_LK_P#7Q4-]\0[-8S]BM)Y).QEPH_0FN!U;4KG5;UKJ\?=(W  X"CT'
MM66/S"DZ3ITW=LFO7CR\L2G70^ (#-XJM"!Q&&=O;Y3_ %(KGJ]-^&NC/:6D
MFHW"E9+@;8P>H3KG\3C\J\K 4G5KQMTU^XY:$7*:.UHHHKZX]4**** .,^*%
M]Y.D06BGYKB3+#_97G^9%>85T_Q$OOM?B.2-3E+9!$/KU/ZG'X5S%?)9A5]I
MB)/MI]QY=>7--G2> -/^W>(H689CMQYS?4?=_7'Y5Z]7'?#*P^SZ-)=L,/<O
MQ_NKP/US78U[N64?9T$WN]3MP\.6'J%%%%>@;A1110 4444 %%%% !1110 4
M444 %?EUK_\ R'=1_P"OF3_T(U^HM?EUK_\ R'=1_P"OF3_T(T 4*_4;0?\
MD!Z=_P!>T?\ Z"*_+FOU&T'_ ) >G?\ 7M'_ .@B@"]1110!\Q_MOZPT>B^&
M-&1OEN)Y;N0?]<U"K_Z,;\J^1Z^A?VUKQI?B/I%IGY(-+5\?[32R9_15KYZH
M ]S_ &/=!35?BHVH3)NCTJSDG7(R/,;$:_HSG\*^X:^6_P!ART M?%UX1\S/
M;0J?3 D)_F*^I* "BBB@#A_C?H*^)/A3XEL"F^06CW$([^9%^\7'U*X_&OSC
MK]49XEG@DBD&Y)%*,/4$8-?EI>0&VNYX&^]$[(?P.* -+P?JS:#XLT;5HS@V
M-Y%<?4*X)'Y"OT\!! (.0>017Y5U^G7@>[-_X+T"\8Y-QI]O,3Z[HU/]: ->
M>5(())93MCC4NQ] !DU^7NO:E)K&N:CJ<_\ KKVYDN7YS\SL6/\ .OT@^)UV
MUA\./%-TAP\.EW+J?1A$V/UK\T* "OTK^%FA+X:^'/AW2538UO91^:/^FK#=
M(?\ OIFK\X] M/M^O:;9XS]HN8XL?[S ?UK]10,# H **** "OE/]J+X8>*/
M%'Q$MM4\+Z)-?6SZ?&DTD;HO[U7<8.2/X=E?5E% 'YY_\*/^(_\ T*MW_P!_
M8O\ XJOJC]ECPOKOA'X?W^G^);"2PNGU.2:.*1E),9BB&>">ZM^5>R44 %,F
M_P!3)_NFGTR;_4R?[IH _+!_OM]:1?O#ZTK_ 'V^M(OWA]: /U.M?^/6'_<'
M\JEJ*U_X]8?]P?RJ6@ HHHH _.KX^?\ )9/%G_7ZW\A7 5W_ ,?/^2R>+/\
MK];^0K@* /T7^ O_ "1SPE_UXI_,UWM<%\!?^2.>$O\ KQ3^9KO: /FW]MV*
M0^$?#<PSY27SHW^\8\C_ -!:OCVOT5^.G@E_'OPXU'2K4*=0C(NK/=WE3.%]
MMP++GMNK\[[F"6UN);>YB>*>)S')&Z[61@<$$'H0: .Y^!OC.'P)\2--UB]#
M?8#NM[K:,D1N,%L=\'#8[XK]#M.OK74K&"]T^XBN;2=!)%-$P974]""*_+.N
M[^&_Q4\4_#Z;&AWN^P9MTEC<@R0.>YQG*GW4@^N: /T9HKPSX=?M(^%?$GE6
MOB 'P_J+<9G;=;L?:3^'_@0 ]S7N$$T=Q"DT$B2Q. R.C!E8'H01U% 'F/Q#
M^"'A;Q[XB;6M;EU-+QHEA(MID12%SC@H>>?6N9_X9<\!_P#/SKO_ (%1_P#Q
MNO=Z* .%^%_PPT+X;)J*^'Y+Z07YC,OVJ57QLW8QA1C[QKNJ** "BBB@ HHH
MH **** "BBB@"GJVFVVJV;6UY'OC/(/0J?4'L:\UUKP/J-F[/8C[9!U&WAQ]
M1W_"O5J*Y,3@J6)UFM>YE4HQJ;G@5Q;S6S[+B&2)Q_"ZE3^M15] NJNN'4,#
MV(S55M,L6.6LK4GWB7_"O,EDKO[L_P #F>#[,\(J[8Z3?W[ 6EI-+G^(+\OY
M]*]NBLK6(YBMH$/JL8%3TX9*K^_/\!K!]V<'X;\"B&1+C62KLO*VZG*Y_P!H
M]_H*[P# P.!117K4,/3P\>6FCJA3C35HA1116Y85%=3I:VLT\IPD2%V^@&:E
MH(R,'D4G>V@'@5U.]S=2SR\O*Y=OJ3FDMH7N;B*"(9DD8(H]23BO>_*C_N+^
M5*(T!R$4'Z5X?]C-N[G^'_!.+ZIW9%86J65E!;1?<A0(/? J>BBO<225D=NP
M4444P"BBB@ HHHH **** "BBB@ HHHH *_+K7_\ D.ZC_P!?,G_H1K]1:_+K
M7_\ D.ZC_P!?,G_H1H H5^HV@_\ (#T[_KVC_P#017Y<U^HV@_\ (#T[_KVC
M_P#010!>HHHH ^'?VQ7+?%\ _P .G0 ?FY_K7AM>Y?MBH5^+P)_BTZ C\W']
M*\-H ^Q?V(X\>"O$,O=M05?RC7_&OH^OG#]B.3/@KQ#'W74%;\XU_P *^CZ
M"BBB@ K\P_&*"/Q=KB+T6^G4?A(U?IY7YA^,G$GB_7'7HU].1_W\:@#'K])O
MA ^_X4^#R3G_ (E-J/RB45^;-?I-\($*?"GP>",?\2FU/YQ*: *OQPD\OX0^
M+FSC.G2K^:X_K7YQU^CGQQ3S/A!XN&,XTZ5OR&?Z5^<= '2_#-!+\1_"J$9#
M:M:@C_MLM?I?7YH?#-Q%\1_"KDX"ZM:DG_MLM?I?0 4444 %%%% !1110 4R
M;_4R?[II],F_U,G^Z: /RP?[[?6D7[P^M*_WV^M(OWA]: /U.M?^/6'_ '!_
M*I:BM?\ CUA_W!_*I: "BBB@#\ZOCY_R63Q9_P!?K?R%<!7?_'S_ )+)XL_Z
M_6_D*X"@#]%_@+_R1SPE_P!>*?S-=[7!? 7_ )(YX2_Z\4_F:[V@ KQ3XX?
MG3O'K2ZOHLD6F^(\?,Y'[FZQT$@'(;_:'X@\8]KHH _,OQCX/U[P;J1L?$FF
M3V4V3L9QE)!ZHXX8?0US]?J-K6D:=KNGR6&LV-O?6<@^:&XC#J??![^]?.7Q
M(_9<LKOS;SP'>_8I3EO[/O&+1'V23EE^C;OJ* /D:NS\ _$SQ7X$F4Z!JDJ6
MN[+6<W[R!_7Y#TSZK@^]97B[PCKW@_4#9>)-+N+";G:9%RD@]4<?*P^A-8-
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
MLBA/D5,J,%O[WSJ<>A%=#0 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !7YCZ]I
M6HG7-1(L+L@W,A!$+?WC[5^G%% 'Y<_V3J/_ $#[O_ORW^%?IQH0(T33P1@B
MWC!!_P!T5>HH **** "JFK:;9:QIMQI^J6L5W97"%)895W*X]Q5NB@#Y,^)?
M[+MU'/->^ +M)H&);^SKQ]KI[)(>&'^]CZFO"->^'GC#0)&75O#6JP!>#)]F
M9X_P=05/X&OTJHH _+!X)48J\4BL.H*D$5;T_1=4U*0)IVFWMVYX"P0/(3^0
MK]0RH/4 _44M 'P/X,_9^\>>))HVN--_L:S)^:?43Y; >T?W\_4 >]?5_P (
M_@_X?^&]N9K,-?:S(NV74)U ;'=47^!?S)[D\5Z310 4444 %%%% 'E'QB^"
M>A?$7=?(W]F:^%P+V),B7'02KQN],\$>X&*^4?&/P+\>^&)GWZ++J=JIXN--
M!G5AZ[0-X_%17Z"T4 ?EI>6-W92F.\M9[>0=4EC*$?@:@5&8X56)] *_5%T5
MQAU##T(S3$@B1LI$BGU"@4 ?FUX=^'?B_P 1R(NC>'-3N%8X$I@*1_B[84?B
M:^@/AC^R\R3PW_Q NXW12&&FVCD[O:23^B_]]5]4T4 5]/LK;3K&"SL+>*VM
M($$<4,2A511T  Z"K%%% !1110!1US2;#7=)NM,U>UCN[&Y0QRPR#(8?T/<$
M<@\BODCXE_LQ:SI]S+=^!9EU.Q)+"SGD$<\?L&.%<?B#['K7V+10!^9VJ^!O
M%>DR,FI>&]8MRO&7LY-I^AQ@_A5>Q\)^(K^0)8Z!JURYZ+%9R.?T%?IS10!\
M,>!/V</&?B&>.36HDT'3R<L]R0TQ'^S$#G/^\5KZY^&_P]T'X>Z/]AT"V(>3
M!N+J7#33L.[-Z>@& /Q-==10!\G_ !G^ WB_Q7\3-;UO1%T\V%X\;Q^;<;&X
MB16R,?W@:XK_ (9E^(/]S2?_  +_ /L:^Y:* ."^!OAK5?!_PSTO0=>$(O;1
MI@?)?>NUI6<<_P# J[VBB@ KA_BE\,?#_P 1]-6#686BO801;WT.!+#[?[2_
M[)X],'FNXHH ^%/''[.?C;P]+))I5O'KUB#E9;,XEQ_M1$YS[+N^M>4ZIH.K
MZ1(8]5TJ_LG'!6YMWC/_ (\!7Z@T$9ZT ?E9M/H?RK4TCPYK>LR!-(TC4;YS
MP!;6SR?R!K].OL\&<^3'GUVBI>E 'PYX&_9L\9:]+'+KBQ:#8GEFN"))B/\
M9C4\'_>*U]7_  S^&OA[X=Z:UOH5L3<R@"XO9L---]3V'^R,#\>:[2B@"IK"
M-)I-ZB*6=H' 4#))VGBO CX5UJYTSPS+;:==Q:EI/@ZVN+4R0LNR]@FBD6$Y
M'#L%92IYPQKZ(HH \<^'.CZHOCK2_$&K:?=07FL:?J-]>&2,XMVEFM?)@8XX
M98HU&T\_*WO7L=%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
M?E63@G!J$6MOS.F-5QK1G6J*2M+;IH_)&7XLBD\/ZU#XFLT)@.(-1C4?>C/
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
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% '__
!V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730018899424">
<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">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Nov. 07, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="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="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Sep. 30,  2022<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="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="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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,577,026<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2022<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="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q3<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="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>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 2 such as Street or Suite number</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="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-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>15
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730019374288">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 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="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="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash</a></td>
<td class="nump">$ 41<span></span>
</td>
<td class="nump">$ 2,682<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Trade accounts receivable, less allowances of $11 and $14, respectively</a></td>
<td class="nump">1,007<span></span>
</td>
<td class="nump">1,240<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">6,156<span></span>
</td>
<td class="nump">7,866<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepositsAssetsCurrent', window );">Short-term deposits</a></td>
<td class="nump">610<span></span>
</td>
<td class="nump">712<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid and other current assets</a></td>
<td class="nump">788<span></span>
</td>
<td class="nump">924<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">8,602<span></span>
</td>
<td class="nump">13,424<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization', window );">Property and equipment, net</a></td>
<td class="nump">433<span></span>
</td>
<td class="nump">675<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">1,248<span></span>
</td>
<td class="nump">292<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">10,283<span></span>
</td>
<td class="nump">14,391<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">1,886<span></span>
</td>
<td class="nump">2,235<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">82<span></span>
</td>
<td class="nump">265<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedProfessionalFeesCurrent', window );">Accrued legal and professional fees</a></td>
<td class="nump">66<span></span>
</td>
<td class="nump">104<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedEmployeeBenefitsCurrent', window );">Accrued payroll and related benefits</a></td>
<td class="nump">380<span></span>
</td>
<td class="nump">718<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedSalesCommissionCurrent', window );">Accrued sales commissions</a></td>
<td class="nump">60<span></span>
</td>
<td class="nump">57<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualCurrent', window );">Accrued warranty reserve</a></td>
<td class="nump">242<span></span>
</td>
<td class="nump">295<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Deferred revenue</a></td>
<td class="nump">7<span></span>
</td>
<td class="nump">268<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">189<span></span>
</td>
<td class="nump">325<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrent', window );">Finance lease liabilities</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NotesPayableCurrent', window );">Notes payable, net of discounts and loan origination fees</a></td>
<td class="nump">1,521<span></span>
</td>
<td class="nump">1,719<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NotesPayableRelatedPartiesClassifiedCurrent', window );">Related party promissory note payable</a></td>
<td class="nump">451<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="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Credit line borrowings, net of loan origination fees</a></td>
<td class="nump">1,976<span></span>
</td>
<td class="nump">2,169<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">6,860<span></span>
</td>
<td class="nump">8,156<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities, net of current portion</a></td>
<td class="nump">1,082<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_LongTermNotesPayable', window );">Notes payable, net of current maturities, discounts and loan origination fees</a></td>
<td class="nump">815<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="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">8,757<span></span>
</td>
<td class="nump">8,182<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, par value $0.0001 per share: Authorized: 5,000,000 shares (3,300,000 designated as Series A Convertible Preferred Stock) at September 30, 2022 and December 31, 2021, Issued and outstanding: 876,447 at September 30, 2022 and December 31, 2021</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="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, par value $0.0001 per share: Authorized: 50,000,000 shares at September 30, 2022 and December 31, 2021, Issued and outstanding: 9,191,108 at September 30, 2022 and 6,368,549 at December 31, 2021</a></td>
<td class="nump">1<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="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">148,238<span></span>
</td>
<td class="nump">144,953<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(3)<span></span>
</td>
<td class="num">(3)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Accumulated deficit</a></td>
<td class="num">(146,710)<span></span>
</td>
<td class="num">(138,741)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders' equity</a></td>
<td class="nump">1,526<span></span>
</td>
<td class="nump">6,209<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders' equity</a></td>
<td class="nump">$ 10,283<span></span>
</td>
<td class="nump">$ 14,391<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_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124259787&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 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://asc.fasb.org/extlink&amp;oid=126968391&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 https://asc.fasb.org/extlink&amp;oid=124501264&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 https://asc.fasb.org/extlink&amp;oid=124501264&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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: 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 https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: 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(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: 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 https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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 https://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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br><br>Reference 2: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: 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(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126919976&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 https://asc.fasb.org/extlink&amp;oid=126919976&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 https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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-26)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<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 (b)<br> -URI https://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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: 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 https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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(32))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<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 (b)<br> -URI https://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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: 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 https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6904-107765<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongTermNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.</p></div>
<a href="javascript:void(0);" onclick="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)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermNotesPayable</td>
</tr>
<tr>
<td style="padding-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_NotesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer.</p></div>
<a href="javascript:void(0);" onclick="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,20)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NotesPayableCurrent</td>
</tr>
<tr>
<td style="padding-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_NotesPayableRelatedPartiesClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount for notes payable (written promise to pay), due to related parties. 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="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 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<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(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: 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(k)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NotesPayableRelatedPartiesClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.</p></div>
<a href="javascript:void(0);" onclick="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 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-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_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://asc.fasb.org/extlink&amp;oid=124501264&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 https://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 https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<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(31))<br> -URI https://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(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>16
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023406576">
<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>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 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="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Trade accounts receivable, less allowances</a></td>
<td class="nump">$ 11<span></span>
</td>
<td class="nump">$ 14<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (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="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="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, issued (in shares)</a></td>
<td class="nump">876,447<span></span>
</td>
<td class="nump">876,447<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, outstanding (in shares)</a></td>
<td class="nump">876,447<span></span>
</td>
<td class="nump">876,447<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (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="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="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, issued (in shares)</a></td>
<td class="nump">9,191,108<span></span>
</td>
<td class="nump">6,368,549<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, outstanding (in shares)</a></td>
<td class="nump">9,191,108<span></span>
</td>
<td class="nump">6,368,549<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>17
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730016739088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Operations - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 1,764<span></span>
</td>
<td class="nump">$ 2,749<span></span>
</td>
<td class="nump">$ 5,305<span></span>
</td>
<td class="nump">$ 7,460<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales</a></td>
<td class="nump">1,927<span></span>
</td>
<td class="nump">2,186<span></span>
</td>
<td class="nump">5,385<span></span>
</td>
<td class="nump">5,951<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross (loss) profit</a></td>
<td class="num">(163)<span></span>
</td>
<td class="nump">563<span></span>
</td>
<td class="num">(80)<span></span>
</td>
<td class="nump">1,509<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</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="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Product development</a></td>
<td class="nump">366<span></span>
</td>
<td class="nump">404<span></span>
</td>
<td class="nump">1,222<span></span>
</td>
<td class="nump">1,427<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general, and administrative</a></td>
<td class="nump">1,802<span></span>
</td>
<td class="nump">1,968<span></span>
</td>
<td class="nump">5,893<span></span>
</td>
<td class="nump">6,454<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets1', window );">Loss on write-off of fixed assets</a></td>
<td class="nump">76<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">76<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="Show.showAR( this, 'defref_us-gaap_RestructuringCosts', window );">Restructuring expense (recovery)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(21)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">2,244<span></span>
</td>
<td class="nump">2,373<span></span>
</td>
<td class="nump">7,191<span></span>
</td>
<td class="nump">7,860<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Loss from operations</a></td>
<td class="num">(2,407)<span></span>
</td>
<td class="num">(1,810)<span></span>
</td>
<td class="num">(7,271)<span></span>
</td>
<td class="num">(6,351)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Other expenses (income):</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="Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="nump">235<span></span>
</td>
<td class="nump">177<span></span>
</td>
<td class="nump">679<span></span>
</td>
<td class="nump">520<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="Show.showAR( this, 'defref_efoi_GainLossOnForgivenessOfDebt', window );">Gain on forgiveness of Paycheck Protection Program loan</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(801)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncome', window );">Other income</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(862)<span></span>
</td>
<td class="num">(30)<span></span>
</td>
<td class="num">(862)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingExpense', window );">Other expenses</a></td>
<td class="nump">20<span></span>
</td>
<td class="nump">15<span></span>
</td>
<td class="nump">49<span></span>
</td>
<td class="nump">47<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (2,662)<span></span>
</td>
<td class="num">$ (1,140)<span></span>
</td>
<td class="num">$ (7,969)<span></span>
</td>
<td class="num">$ (5,255)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_EarningsPerShareBasicAndDilutedEPSAbstract', window );"><strong>Net loss per common share - basic and diluted</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="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare', window );">Net loss, basic (USD per share)</a></td>
<td class="num">$ (0.29)<span></span>
</td>
<td class="num">$ (0.22)<span></span>
</td>
<td class="num">$ (1.05)<span></span>
</td>
<td class="num">$ (1.22)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Net loss, diluted (USD per share)</a></td>
<td class="num">$ (0.29)<span></span>
</td>
<td class="num">$ (0.22)<span></span>
</td>
<td class="num">$ (1.05)<span></span>
</td>
<td class="num">$ (1.22)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract', window );"><strong>Weighted average shares of common stock outstanding:</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="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding (in shares)</a></td>
<td class="nump">9,190<span></span>
</td>
<td class="nump">5,086<span></span>
</td>
<td class="nump">7,608<span></span>
</td>
<td class="nump">4,309<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding (in shares)</a></td>
<td class="nump">9,190<span></span>
</td>
<td class="nump">5,086<span></span>
</td>
<td class="nump">7,608<span></span>
</td>
<td class="nump">4,309<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_EarningsPerShareBasicAndDilutedEPSAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Earnings Per Share, Basic and Diluted EPS</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EarningsPerShareBasicAndDilutedEPSAbstract</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_GainLossOnForgivenessOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain (Loss) On Forgiveness Of Debt</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_GainLossOnForgivenessOfDebt</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_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GainLossOnDispositionOfAssets1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.</p></div>
<a href="javascript:void(0);" onclick="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 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets1</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeLossFromContinuingOperationsPerBasicShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 5: 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(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 6: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: 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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 8: 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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<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 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 10: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 11: 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(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 12: 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(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 13: 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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 14: 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 1<br> -Subparagraph (SX 210.5-03(13))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868656-224227<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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerBasicShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_IncomeLossFromContinuingOperationsPerDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 https://asc.fasb.org/extlink&amp;oid=124432515&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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1337-109256<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 5: 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(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 6: 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(27))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 10: 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 1<br> -Subparagraph (SX 210.5-03(13))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868656-224227<br><br>Reference 11: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 12: 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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1252-109256<br><br>Reference 13: 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(19))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-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 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 16: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=124435984&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126953954&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 https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<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 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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 https://asc.fasb.org/extlink&amp;oid=124431687&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: 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 https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-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_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherNonoperatingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingExpense</td>
</tr>
<tr>
<td style="padding-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_OtherNonoperatingIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7)(d))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncome</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 912<br> -SubTopic 730<br> -Section 25<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6472174&amp;loc=d3e58812-109433<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://asc.fasb.org/extlink&amp;oid=123596393&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 15: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<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 https://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 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 45<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-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_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-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_WeightedAverageNumberOfSharesOutstandingBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract</td>
</tr>
<tr>
<td style="padding-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>18
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729946974256">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Changes in Stockholders' Equity - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Preferred Stock</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</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="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2020</a></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="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="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Dec. 31, 2020</a></td>
<td class="nump">$ 4,255<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 135,113<span></span>
</td>
<td class="num">$ (3)<span></span>
</td>
<td class="num">$ (130,855)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,525,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="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [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>
<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised', window );">Issuance of common stock upon the exercise of warrants (in shares)</a></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="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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued', window );">Issuance of common stock upon the exercise of warrants</a></td>
<td class="nump">527<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">527<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="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="num">(2)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">140<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">140<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">(1,642)<span></span>
</td>
<td class="text">&#160;<span></span>
</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)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (in shares) at Mar. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,682,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance (in shares) at Mar. 31, 2021</a></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="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="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Mar. 31, 2021</a></td>
<td class="nump">3,278<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">135,778<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(132,497)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2020</a></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="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="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Dec. 31, 2020</a></td>
<td class="nump">4,255<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">135,113<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(130,855)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,525,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="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [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>
<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">(5,255)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (in shares) at Sep. 30, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,087,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance (in shares) at Sep. 30, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Sep. 30, 2021</a></td>
<td class="nump">4,502<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">140,615<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(136,110)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Beginning balance (in shares) at Mar. 31, 2021</a></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="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="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Mar. 31, 2021</a></td>
<td class="nump">3,278<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">135,778<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(132,497)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Beginning balance (in shares) at Mar. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,682,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="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [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>
<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">69,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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of common stock under employee stock option and stock purchase plans</a></td>
<td class="nump">59<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Issuance of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">990,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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Issuance of common stock</a></td>
<td class="nump">5,000<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="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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts', window );">Offering costs on issuance of common stock and warrants</a></td>
<td class="num">(469)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(469)<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Issuance of common stock upon conversion from preferred stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,721,000)<span></span>
</td>
<td class="nump">344,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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">208<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">208<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">(2,473)<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(2,473)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (in shares) at Jun. 30, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,085,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance (in shares) at Jun. 30, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Jun. 30, 2021</a></td>
<td class="nump">5,603<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">140,576<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(134,970)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [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>
<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">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="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="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts', window );">Offering costs on issuance of common stock and warrants</a></td>
<td class="num">(1)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1)<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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">39<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">39<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">(1,140)<span></span>
</td>
<td class="text">&#160;<span></span>
</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,140)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (in shares) at Sep. 30, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,087,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance (in shares) at Sep. 30, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Sep. 30, 2021</a></td>
<td class="nump">4,502<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">140,615<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(136,110)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Dec. 31, 2021</a></td>
<td class="nump">$ 6,209<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">144,953<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(138,741)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2021</a></td>
<td class="nump">6,368,549<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,368,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="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [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>
<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="Show.showAR( this, 'defref_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised', window );">Issuance of common stock upon the exercise of warrants (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85,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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">$ 44<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">44<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">(2,821)<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(2,821)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (in shares) at Mar. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,453,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance (in shares) at Mar. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Mar. 31, 2022</a></td>
<td class="nump">3,432<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">144,997<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(141,562)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Dec. 31, 2021</a></td>
<td class="nump">$ 6,209<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">144,953<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(138,741)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Beginning balance (in shares) at Dec. 31, 2021</a></td>
<td class="nump">6,368,549<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,368,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="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [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>
<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (7,969)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (in shares) at Sep. 30, 2022</a></td>
<td class="nump">9,191,108<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,191,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance (in shares) at Sep. 30, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Sep. 30, 2022</a></td>
<td class="nump">$ 1,526<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">148,238<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(146,710)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Beginning balance (in shares) at Mar. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Mar. 31, 2022</a></td>
<td class="nump">3,432<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">144,997<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(141,562)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Beginning balance (in shares) at Mar. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,453,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="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [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>
<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">45,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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of common stock under employee stock option and stock purchase plans</a></td>
<td class="nump">5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5<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="Show.showAR( this, 'defref_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised', window );">Issuance of common stock upon the exercise of warrants (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,313,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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued', window );">Issuance of common stock upon the exercise of warrants</a></td>
<td class="nump">3,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">3,499<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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts', window );">Offering costs on issuance of common stock and warrants</a></td>
<td class="num">(334)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(334)<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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">54<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">54<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">(2,486)<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(2,486)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (in shares) at Jun. 30, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,811,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance (in shares) at Jun. 30, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Jun. 30, 2022</a></td>
<td class="nump">4,171<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">148,221<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="num">(144,048)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [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>
<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised', window );">Issuance of common stock upon the exercise of warrants (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,379,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="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">17<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (2,662)<span></span>
</td>
<td class="text">&#160;<span></span>
</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">(2,662)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (in shares) at Sep. 30, 2022</a></td>
<td class="nump">9,191,108<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,191,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Ending balance (in shares) at Sep. 30, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">876,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="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Sep. 30, 2022</a></td>
<td class="nump">$ 1,526<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 148,238<span></span>
</td>
<td class="num">$ (3)<span></span>
</td>
<td class="num">$ (146,710)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_StockIssuedDuringThePeriodSharesWarrantsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Stock Issued During The Period, Shares, Warrants Exercised</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_StockIssuedDuringThePeriodSharesWarrantsExercised</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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="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 20<br> -Section 55<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126964447&amp;loc=d3e11149-113907<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 20<br> -Section 55<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126964447&amp;loc=d3e11178-113907<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126961718&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123466302&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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<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 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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 https://asc.fasb.org/extlink&amp;oid=124431687&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: 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 https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: 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 1E<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<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 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<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(31))<br> -URI https://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(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>19
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729947318848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (2,662)<span></span>
</td>
<td class="num">$ (1,140)<span></span>
</td>
<td class="num">$ (7,969)<span></span>
</td>
<td class="num">$ (5,255)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net loss to net cash used in 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNoncashIncome', window );">Other income</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(862)<span></span>
</td>
<td class="num">(30)<span></span>
</td>
<td class="num">(862)<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="Show.showAR( this, 'defref_efoi_GainLossOnForgivenessOfDebt', window );">Gain on forgiveness of Paycheck Protection Program loan</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(801)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">42<span></span>
</td>
<td class="nump">43<span></span>
</td>
<td class="nump">129<span></span>
</td>
<td class="nump">143<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation</a></td>
<td class="nump">17<span></span>
</td>
<td class="nump">39<span></span>
</td>
<td class="nump">115<span></span>
</td>
<td class="nump">387<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Provision for doubtful accounts receivable</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="num">(3)<span></span>
</td>
<td class="nump">10<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWriteDown', window );">Provision for slow-moving and obsolete inventories</a></td>
<td class="nump">220<span></span>
</td>
<td class="num">(70)<span></span>
</td>
<td class="nump">164<span></span>
</td>
<td class="num">(9)<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="Show.showAR( this, 'defref_efoi_IncreaseDecreaseInProvisionForWarranties', window );">Provision for warranties</a></td>
<td class="num">(74)<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="num">(53)<span></span>
</td>
<td class="nump">13<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfDebtDiscountPremium', window );">Amortization of loan discounts and origination fees</a></td>
<td class="nump">87<span></span>
</td>
<td class="nump">61<span></span>
</td>
<td class="nump">247<span></span>
</td>
<td class="nump">158<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Loss on write-off of property and equipment</a></td>
<td class="nump">76<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">76<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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="nump">139<span></span>
</td>
<td class="num">(500)<span></span>
</td>
<td class="nump">240<span></span>
</td>
<td class="nump">390<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="nump">792<span></span>
</td>
<td class="nump">444<span></span>
</td>
<td class="nump">1,546<span></span>
</td>
<td class="num">(2,105)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDepositOtherAssets', window );">Short-term deposits</a></td>
<td class="num">(110)<span></span>
</td>
<td class="num">(62)<span></span>
</td>
<td class="num">(51)<span></span>
</td>
<td class="nump">87<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid and other assets</a></td>
<td class="nump">46<span></span>
</td>
<td class="num">(91)<span></span>
</td>
<td class="nump">162<span></span>
</td>
<td class="num">(119)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">629<span></span>
</td>
<td class="num">(164)<span></span>
</td>
<td class="num">(92)<span></span>
</td>
<td class="num">(82)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued and other liabilities</a></td>
<td class="num">(101)<span></span>
</td>
<td class="nump">53<span></span>
</td>
<td class="num">(461)<span></span>
</td>
<td class="num">(305)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDeferredRevenue', window );">Deferred revenue</a></td>
<td class="nump">7<span></span>
</td>
<td class="num">(69)<span></span>
</td>
<td class="num">(261)<span></span>
</td>
<td class="num">(70)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities', window );">Total adjustments</a></td>
<td class="nump">1,771<span></span>
</td>
<td class="num">(1,175)<span></span>
</td>
<td class="nump">1,728<span></span>
</td>
<td class="num">(3,165)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash used in operating activities</a></td>
<td class="num">(891)<span></span>
</td>
<td class="num">(2,315)<span></span>
</td>
<td class="num">(6,241)<span></span>
</td>
<td class="num">(8,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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Acquisitions of property and equipment</a></td>
<td class="num">(9)<span></span>
</td>
<td class="num">(100)<span></span>
</td>
<td class="num">(41)<span></span>
</td>
<td class="num">(311)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(9)<span></span>
</td>
<td class="num">(100)<span></span>
</td>
<td class="num">(41)<span></span>
</td>
<td class="num">(311)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants', window );">Proceeds from the issuance of common stock and warrants</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">3,500<span></span>
</td>
<td class="nump">5,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="Show.showAR( this, 'defref_us-gaap_ProceedsFromWarrantExercises', window );">Proceeds from the exercise of warrants</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">527<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">(1)<span></span>
</td>
<td class="num">(334)<span></span>
</td>
<td class="num">(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="Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Principal payments under finance lease obligations</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(1)<span></span>
</td>
<td class="num">(1)<span></span>
</td>
<td class="num">(3)<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="Show.showAR( this, 'defref_efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans', window );">Proceeds from exercise of stock options and employee stock purchase plan purchases</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">5<span></span>
</td>
<td class="nump">59<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="nump">0<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromNotesPayable', window );">Proceeds from the related party promissory note payable</a></td>
<td class="nump">450<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">450<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="Show.showAR( this, 'defref_us-gaap_PaymentsOfFinancingCosts', window );">Deferred financing costs paid</a></td>
<td class="num">(95)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(329)<span></span>
</td>
<td class="num">(30)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit', window );">Net payments on the credit line borrowings - Credit Facilities</a></td>
<td class="nump">58<span></span>
</td>
<td class="nump">1,128<span></span>
</td>
<td class="num">(215)<span></span>
</td>
<td class="nump">337<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided by financing activities</a></td>
<td class="nump">3<span></span>
</td>
<td class="nump">1,127<span></span>
</td>
<td class="nump">3,641<span></span>
</td>
<td class="nump">6,934<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net decrease in cash</a></td>
<td class="num">(897)<span></span>
</td>
<td class="num">(1,288)<span></span>
</td>
<td class="num">(2,641)<span></span>
</td>
<td class="num">(1,797)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, beginning of period</a></td>
<td class="nump">938<span></span>
</td>
<td class="nump">1,669<span></span>
</td>
<td class="nump">2,682<span></span>
</td>
<td class="nump">2,178<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, end of period</a></td>
<td class="nump">41<span></span>
</td>
<td class="nump">381<span></span>
</td>
<td class="nump">41<span></span>
</td>
<td class="nump">381<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2021StreetervilleNoteMember', window );">2021 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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromNotesPayable', window );">Proceeds from the related party promissory note payable</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,515<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on the 2021 Streeterville note</a></td>
<td class="num">(410)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,435)<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2022StreetervilleNoteMember', window );">2022 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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromNotesPayable', window );">Proceeds from the related party promissory note payable</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 2,000<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_GainLossOnForgivenessOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain (Loss) On Forgiveness Of Debt</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_GainLossOnForgivenessOfDebt</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_IncreaseDecreaseInProvisionForWarranties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Increase (Decrease) In Provision For Warranties</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds From (Payments For) Issuance Of Common Stock And Warrants</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants</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_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds from Stock Options Exercised And Employee Stock Purchase Plans</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AmortizationOfDebtDiscountPremium">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28541-108399<br><br>Reference 2: 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 1F<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495355-112611<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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfDebtDiscountPremium</td>
</tr>
<tr>
<td style="padding-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123444420&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4542-108314<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<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 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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 https://asc.fasb.org/extlink&amp;oid=124431687&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: 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 https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherNoncashIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income or gain included in net income that result in no cash inflow (outflow), classified as other.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNoncashIncome</td>
</tr>
<tr>
<td style="padding-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_PaymentsOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for loan and debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-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_PaymentsOfStockIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromNotesPayable</td>
</tr>
<tr>
<td style="padding-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_ProceedsFromRepaymentsOfLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124255953&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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_A2021StreetervilleNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_A2021StreetervilleNoteMember</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_A2022StreetervilleNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_A2022StreetervilleNoteMember</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>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730024279104">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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>Energy Focus, Inc. engages primarily in the design, development, manufacturing, marketing and sale of energy-efficient lighting and controls systems products. We develop, market and sell high quality light-emitting diode (&#8220;LED&#8221;) lighting and controls products in the commercial market and military maritime market (&#8220;MMM&#8221;), and expanded our offerings into the consumer market beginning in the fourth quarter of 2021. Our mission is to enable our customers to run their facilities, offices and homes with greater energy efficiency, productivity, and human health and wellness through advanced LED retrofit solutions. Our goal is to be the human wellness lighting and LED lighting technology and market leader for the most demanding applications where performance, quality, value, 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-grade tubular LED (&#8220;TLED&#8221;) products, as well as other LED and lighting control products for commercial and consumer applications. After evaluating market demand and supply chain challenges for our ultraviolet-C light disinfection products, we have revised our marketing strategy to primarily focus on our MMM and commercial and industrial lighting and control products.<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730020432592">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><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 and nine months ended September&#160;30, 2022 and 2021 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, 2021 (&#8220;2021 Annual Report&#8221;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2021 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 style="margin-bottom:10pt"><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 September&#160;30, 2022 and December&#160;31, 2021, Condensed Consolidated Statements of Operations for the three and nine months ended September&#160;30, 2022 and 2021, Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the three and nine months ended September&#160;30, 2022 and 2021, and Condensed Consolidated Statements of Cash Flows for the three and nine months ended September&#160;30, 2022 and 2021.</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 September 30, 2022, sales to a regional commercial lighting retrofit company accounted for approximately 32% of net sales. For the three months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 19%, 17% and 27% 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 36% of net sales for the same period.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the nine months ended September 30, 2022, sales to our primary distributor for the U.S. Navy, a regional commercial lighting retrofit company, and a commercial building system provider, accounted for approximately 13%, 15%, and 10% 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 17% of net sales for the same period. For the nine months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 33%, 10% and 17% 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 43% of net sales for the same period.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A regional commercial lighting retrofit company, a commercial building systems provider, and a U.S. Navy mechanical contractor accounted for approximately 25%, 12%, and 12% of net trade accounts receivable, respectively, at September&#160;30, 2022. At December&#160;31, 2021, a distributor to the U.S. Department of Defense accounted for 20% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 36% of our net trade accounts receivable.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">One offshore supplier accounted for approximately 17% and 18%, respectively, of our total expenditures for the three and nine months ended September&#160;30, 2022. For the three and nine months ended September&#160;30, 2021, one offshore supplier accounted for approximately 19% and 30%, respectively, of total expenditures.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At September&#160;30, 2022, one offshore supplier accounted for approximately 45% of our trade accounts payable balance. At December&#160;31, 2021, this offshore supplier accounted for approximately 60% of our trade accounts payable balance.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent accounting pronouncement</span></div><div style="margin-bottom:10pt"><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 but do not expect any material financial statement impact upon adoption.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue</span></div><div style="margin-bottom:10pt"><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 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 </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:55.206%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.110%"/><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:9.110%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><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:9.110%"/><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:9.114%"/><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/>September 30,</span></td><td colspan="3" style="padding:0 1pt"/><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%">Nine months ended<br/>September 30,</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%">2022</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%">2021</span></td><td colspan="3" style="padding:0 1pt"/><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%">2022</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%">2021</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%">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="background-color:#cceeff;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:2px 1pt;text-align: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></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%">1,288&#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,522&#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"/><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%">3,397&#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%">3,513&#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%">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%">476&#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,227&#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"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,908&#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,947&#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: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%">1,764&#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%">2,749&#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 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%">5,305&#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%">7,460&#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></table></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our trade accounts receivable consists of amounts billed to and currently due from customers. Our customers are 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 a third-party account receivable insurance program with a very 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 credit-worthiness ratings and metrics that significantly assist us in evaluating the credit worthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of account receivables 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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 for major 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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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. For the three months ended September 30, 2022 and September&#160;30, 2021, less than 1% of sales were attributable to customers outside the United States. For the nine months ended September 30, 2022 and September&#160;30, 2021, approximately 1% of sales were attributable to customers outside the United States. The geographic location of our net sales is derived from the destination to which we ship the product.</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a reconciliation of basic and diluted loss per share computations (in thousands):</span></div><div style="margin-bottom:10pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:55.506%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.110%"/><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:9.110%"/><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:9.110%"/><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:9.113%"/><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/>September 30,</span></td><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%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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%">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="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%">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%">(2,662)</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,140)</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%">(7,969)</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%">(5,255)</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: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="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #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%">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="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="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%">Basic and diluted 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%">9,190&#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%">5,086&#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%">7,608&#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,309&#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"/><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 style="margin-bottom:10pt"><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 September 30, 2022,  warrants and convertible securities representing approximately 220&#160;thousand and 175&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation because their inclusion would have been anti-dilutive. As a result of the net loss we incurred for the three months ended September 30, 2021, options, warrants and convertible securities representing approximately 41&#160;thousand, 11&#160;thousand and 175&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation as their inclusion would have been anti-dilutive. </span></div><div style="margin-bottom:10pt"><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 nine months ended September 30, 2022, warrants and convertible securities representing approximately 201&#160;thousand and 175&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation because their inclusion would have been anti-dilutive. As a result of the net loss we incurred for the nine months ended September 30, 2021, options, warrants and convertible securities representing approximately 60&#160;thousand, 56&#160;thousand and 289&#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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We warrant our commercial and MMM LED products and controls for periods generally ranging from <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_3aa032ef-d1be-49b9-9d46-a1940c7bf3fc"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_c24d493e-2d1f-4b2e-a4a3-7b64303ed106">five</span></span> to ten 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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:55.806%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.110%"/><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:9.110%"/><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:9.110%"/><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:9.114%"/><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/>September 30,</span></td><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%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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%">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%">315&#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%">239&#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%">295&#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%">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"/></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, net of changes in inventory reserves for replacements</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%">(23)</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%">10&#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%">(17)</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%">49&#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%">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%">(57)</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"/><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%">(29)</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%">16&#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 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%">7&#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%">(13)</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)</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%">(52)</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%">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%">242&#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="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%">242&#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"/></tr></table></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">June 2022 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2022, we completed a private placement (the &#8220;June 2022 Private Placement&#8221;) with certain institutional investors for the sale of 1,313,462 shares of our common stock at a purchase price of $1.30 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#8220;June 2022 Pre-Funded Warrants&#8221;) to purchase 1,378,848 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the June 2022 Pre-Funded Warrants, the &#8220;June 2022 Warrants&#8221;) to purchase up to an aggregate of 2,692,310 shares of common stock at an exercise price of $1.30 per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $252&#160;thousand, plus $35&#160;thousand in expenses, and we also paid legal, accounting and other fees of $47&#160;thousand. Total offering costs of $334&#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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $3.2 million. We determined the exercise price of the June 2022 Pre-Funded Warrants to be nominal and, as such, have considered the 1,378,848 shares underlying them to be outstanding effective June 7, 2022, for purposes of calculating net loss per share. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In July 2022, all of the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of 2,692,310 shares remained outstanding, with a weighted average exercise price of $1.30 per share. The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $3.5 million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">December 2021 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we completed a private placement (the &#8220;December 2021 Private Placement&#8221;) with certain institutional investors for the sale of 1,193,185 shares of our common stock at a purchase price of $3.52 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#8220;December 2021 Pre-Funded Warrants&#8221;) to purchase 85,228 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the December 2021 Pre-Funded Warrants, the &#8220;December 2021 Warrants&#8221;) to purchase up to an aggregate of 1,278,413 shares of common stock at an exercise price of $3.52 per share. In connection with the December 2021 Private Placement, we paid the placement agent commissions of $360&#160;thousand, plus $42&#160;thousand in expenses, and we also paid legal, accounting and other fees of $97&#160;thousand. Total offering costs of $499&#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, 2021. Net proceeds to us from the December 2021 Private Placement were approximately $4.0 million. We determined the exercise price of the December 2021 Pre-Funded Warrants to be nominal and, as such, have considered the 85,228 shares underlying them to be outstanding effective December 16, 2021, for purposes of calculating net loss per share. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2022, all of the December 2021 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of 1,278,413 shares remained outstanding, with an exercise price of $3.52 per share. The exercise of the remaining December 2021 Warrants outstanding could provide us with cash proceeds of up to $4.5 million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">June 2021 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2021, we completed a registered direct offering of 990,100 shares of our common stock to certain institutional investors, at a purchase price of $5.05 per share (the &#8220;June 2021 Equity Offering&#8221;). We paid the placement agent commissions of $400 thousand, plus $51 thousand in expenses, in connection with the June 2021 Equity Offering, and we also paid legal and other fees of $18&#160;thousand. Total offering costs of $469&#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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $4.5 million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">January 2020 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2020, we completed a registered direct offering 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 (the &#8220;Investor Warrants&#8221;) in a concurrent private placement (together with the concurrent registered direct offering, the &#8220;January 2020 Equity Offering&#8221;) for a purchase price of $0.625 per warrant. 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 (together with the Investor Warrants, the &#8220;January 2020 Warrants&#8221;).</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022, January 2020 Warrants to purchase an aggregate of 229,414 shares remain outstanding with a weighted average exercise price of $3.67 per share. The exercise of these warrants could provide us with cash proceeds of up to $0.8 million in the aggregate. During the nine months ended September 30, 2022, none of these warrants were exercised. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2021, January 2020 Warrants to purchase an aggregate of 310,860 shares remained outstanding with a weighted average exercise price of $3.59 per share. During the nine months ended September 30, 2021, 156,446 January 2020 Warrants were exercised resulting in total proceeds of $527&#160;thousand.</span></div><div style="margin-bottom:10pt"><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 Measurements</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18726-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI https://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730021749216">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock', window );">Restructuring</a></td>
<td class="text">RESTRUCTURING<div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no restructuring credits or expense recorded for the three and nine months ended September&#160;30, 2022. For the three months ended September 30, 2021, we recorded nominal net restructuring expense and for the nine months ended September 30, 2021, we recorded a net restructuring credit of approximately $21&#160;thousand, 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 2021 Annual Report.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The lease obligation on our former New York, New York office was settled as of June 30, 2021. Our restructuring liabilities consisted of estimated ongoing costs related to long-term operating lease obligations, which the Company exited. The recorded value of the lease obligation was 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 were measured using the credit adjusted, risk free rate that was used to measure the restructuring liabilities initially.</span></div><div style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:81.632%"/><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:16.168%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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></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="3" style="display:none"/><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%">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"/></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 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="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%">(11)</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:700;line-height:100%">Balance at September 30, 2021</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%">&#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"/></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:10pt"><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 began to tailor our operating expenses to be more in line with our expected sales volumes. Throughout 2022, we have continued to aggressively pursue cost reduction activities, including reducing staffing levels, inventory levels and our real estate footprint, but sales volume have trailed these ongoing cost control efforts. 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 September&#160;30, 2022. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Throughout 2021 and 2022, we have continued to evaluate and assess strategic options as we seek to achieve profitability. We plan to continue to develop advanced lighting and lighting control technologies and introduce impactful new products surrounding 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%">, our patented, breakthrough powerline control platform. We also continue to believe our proprietary 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%"> emergency backup lighting system addresses a market need and will continue to help drive commercial sales for us as it has been well received in the market.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We plan to achieve profitability by growing our sales, primarily through existing and new commercial and industrial lighting and control systems and by continuing to refine and execute on our multi-channel sales strategy that targets key verticals, such as government, healthcare, eldercare, education, and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships, as well as our emerging consumer market focus.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As described in Note 9, &#8220;Stockholders&#8217; Equity,&#8221; we also raised approximately $3.2 million of net proceeds upon the issuance of common stock and June 2022 Warrants in connection with the June 2022 Private Placement, $4.0 million of net proceeds upon the issuance of common stock and December 2021 Warrants in connection with the December 2021 Private Placement, and approximately $4.5 million of net proceeds upon the issuance of common stock in connection with the June 2021 Equity Offering. As described in Note 7, &#8220;Debt&#8221;, in September 2022, April 2022 and April 2021, we obtained net proceeds from bridge financing of approximately $0.5 million, $1.8 million and $1.5 million, respectively. Also in April 2021, we expanded the borrowing capacity on one of our revolving credit facilities.</span></div><div style="margin-bottom:10pt"><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 taken throughout 2021 and continuing into 2022, as well as the June 2022 Private Placement, the December 2021 Private Placement and the June 2021 Equity Offering that strengthened our balance sheet, our credit facility capacity increase and bridge financings in September 2022, April 2022 and April 2021, and the funds we expect to receive related to the Employee Retention Tax Credit (&#8220;ERTC&#8221;; see Note 11, &#8220;Other Income&#8221; for details), were all 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 willingness of our suppliers to continue partnering with us, the corresponding time and inventory management required to ramp up sales from new products, markets, and customers into this sales cycle, the timing of introductions of additional new products, significant competition, potential sales volatility given our customer concentration, numerous interruptions and cost increases in the supply chain globally, and the long-term economic impact from the COVID-19 pandemic that has significantly diminished the interest and activities for our customers&#8217; lighting retrofit projects until occupancy returns to more normal levels, among other factors.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, global supply chain and logistics constraints are impacting our inventory purchasing strategy, as we seek to manage both shortages of available components and longer lead times in obtaining components while balancing the development and implementation of an inventory reduction plan. Disruptions in global logistics networks are also impacting our lead times and ability to efficiently and cost-effectively transport products from our third-party suppliers to our facility. 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 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-weight:400;line-height:120%;padding-left:14.5pt">obtaining financing from traditional or non-traditional investment capital organizations or individuals; </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-weight:400;line-height:120%;padding-left:14.5pt">obtaining funding from the sale of our common stock or other equity or debt instruments; and</span></div><div style="margin-bottom:10pt;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-weight:400;line-height:120%;padding-left:14.5pt">obtaining debt financing with lending terms that more closely match our business model and capital needs.</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: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-weight:400;line-height:120%;padding-left:14.5pt">additional equity financing may not be available to us on satisfactory terms, particularly in light of the current price of our common stock, and any equity we are able to issue could lead to substantial dilution for current stockholders and have rights, preferences and privileges senior to our common stock;</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-weight:400;line-height:120%;padding-left:14.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="margin-bottom:10pt;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-weight:400;line-height:120%;padding-left:14.5pt">the current environment in the capital markets and volatile interest rates, combined with our capital constraints, may prevent us from being able to obtain adequate debt financing.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, if we are unable to find a permanent chief financial officer, it may be more difficult to obtain additional financing on satisfactory terms or at all. 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 style="margin-bottom:10pt"><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 ensure adequate 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, could provide us with an ability to finance our operations through the next twelve months and may mitigate the substantial doubt about our ability to continue as a going concern.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 23, 2022, we received a written notice, (the &#8220;Notice&#8221;), from the Listing Qualifications staff (the &#8220;Staff&#8221;) of The Nasdaq Stock Market (&#8220;Nasdaq&#8221;) that the Company is not in compliance with the requirement to maintain a minimum closing bid price of $1.00 per share, as set forth in Nasdaq Listing Rule 5550(a)(2) (the &#8220;Bid Price Requirement&#8221;) because the closing bid price of our common stock was below $1.00 per share for 30 consecutive business days. The Notice does not impact the listing of our common stock on The Nasdaq Capital Market at this time. The Notice provided that, in accordance with Nasdaq Listing Rule 5810(c)(3)(A), the Company has a period of 180 calendar days from the date of the Notice, or until February 20, 2023, to regain compliance with the Bid Price Requirement. During this period, our common stock will continue to trade on The Nasdaq Capital Market. However, there can be no assurance that the Company will be able to regain compliance with the rule or will otherwise be in compliance with other Nasdaq listing criteria. If we are unable to regain compliance, Nasdaq may make a determination to delist our common stock.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 17, 2020, we received a letter from the Staff 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. 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. In accordance with one part of the plan submitted to the Staff, we successfully modified our outstanding January 2020 Warrants and in December 2020, we reclassified $1.4&#160;million from warrant liability into equity. 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 December 31, 2020, our stockholders&#8217; equity was $4,255,000, satisfying the Minimum Stockholders&#8217; Equity Rule. At December&#160;31, 2021, our stockholders&#8217; equity was $6,209,000 and at September&#160;30, 2022, our stockholders&#8217; equity was $1,526,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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(e))<br> -URI https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br><br>Reference 2: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -URI https://asc.fasb.org/topic&amp;trid=2175745<br><br>Reference 4: 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 (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730025283888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text">INVENTORIES<div style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.062%"/><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.064%"/><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%">September 30,<br/>2022</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/>2021</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%">3,584&#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,882&#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%">5,231&#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,034&#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,659)</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,050)</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%">6,156&#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%">7,866&#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:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:48.299%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.062%"/><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.062%"/><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:11.062%"/><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:11.065%"/><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/>September 30,</span></td><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%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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,792)</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,956)</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,050)</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,894)</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%">(241)</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%">34&#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%">(442)</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%">(64)</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%">21&#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%">36&#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%">278&#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%">72&#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%">Write-off for disposed inventory</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%">353&#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%">&#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%">555&#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%">&#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 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:#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:10pt;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:10pt;font-weight:400;line-height:100%">(2,659)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:10pt;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:10pt;font-weight:400;line-height:100%">(2,886)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:10pt;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:10pt;font-weight:400;line-height:100%">(2,659)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:10pt;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:10pt;font-weight:400;line-height:100%">(2,886)</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"/></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:112%">As part of our expense reduction initiatives, we significantly decreased our warehouse space beginning in the third quarter of 2022. In connection with the space reduction, in the second quarter of 2022, we began disposing of a substantial portion of our excess and obsolete commercial finished goods inventory that was highly reserved, which effort continued into the third quarter of 2022. As of September 30, 2022, approximately $563&#160;thousand, on a gross value basis, of such inventory had been disposed of. Additional inventory management efforts are expected to continue in the fourth quarter of 2022.</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_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/topic&amp;trid=2126998<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730020422720">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property and Equipment</a></td>
<td class="text">PROPERTY AND EQUIPMENT<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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.062%"/><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.064%"/><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%">September 30,<br/>2022</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/>2021</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,096&#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,308&#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%">413&#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%">384&#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%">81&#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%">83&#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%">86&#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%">86&#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,144&#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,194&#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%">141&#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"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">mUVe</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;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:100%"> ultraviolet-C light disinfection robots (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%">&#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%">105&#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%">Projects in progress</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%">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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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:#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%">3,042&#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%">3,477&#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><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%">Less: accumulated 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:10pt;font-weight:400;line-height:100%">(2,609)</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,802)</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 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:#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%">433&#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%">675&#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></table><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense was $42&#160;thousand and $43&#160;thousand for the three months ended September 30, 2022 and 2021, respectively. For the nine months ended September 30, 2022 and 2021, depreciation expense was $129&#160;thousand and $143&#160;thousand, respectively. During the third quarter of 2022 it was determined that the mUVe</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> ultraviolet-C light disinfection robots were no longer of use and the net book value of $76&#160;thousand was recorded as a loss on write-off of fixed assets.<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126982197&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 https://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 https://asc.fasb.org/extlink&amp;oid=126982197&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 https://asc.fasb.org/extlink&amp;oid=126982197&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730021132944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeasesTextBlock', window );">Leases</a></td>
<td class="text">LEASES<div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2027 under which it is responsible for related maintenance, taxes and insurance. The Company had one finance lease containing a bargain purchase option that was not renewed upon expiration of the lease during the second quarter of 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 our equipment operating leases had been extended through 2026. Additionally, as of March 25, 2022, in connection with extending through 2027, the terms of our expiring headquarters real estate operating lease for manufacturing, warehouse and office space have been modified beginning July 1, 2022 to reflect a smaller footprint at reduced costs. In accordance with Accounting Standards 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;), as a result of the extension, the related lease liability was remeasured and the right-of-use asset was adjusted for each lease at the time of modification in January 2021 and March 2022. The present value of the lease obligations for these leases were calculated using an incremental borrowing rate of 15.93% for the equipment lease and 16.96% for the real estate lease, which were the Company&#8217;s blended borrowing rates (including interest, annual facility fees, collateral management fees, bank fees and other miscellaneous lender fees) 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 other remaining lease obligations continues to be calculated using an incremental borrowing rate of 7.25% (which excludes the annual facility fee and other lender fees), 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 the operating leases is 4.7 years.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 expired in June 2021. 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 Standards 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 sublease income in future years as of December&#160;31, 2020. The Company continued to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and continued to accrete those liabilities in accordance with Accounting Standards 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 2021 Annual Report.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no finance lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021. Components of the operating and restructured lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021, were as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:50.401%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.161%"/><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:10.161%"/><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:10.161%"/><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:10.163%"/><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 September 30,</span></td><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%">Nine months ended September 30,</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%">2022</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%">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%">2022</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%">2021</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 lease cost (income)</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"/><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"/><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 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 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%">(9)</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="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%">(90)</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%">(87)</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%">Lease cost</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%">83&#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%">139&#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%">298&#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%">423&#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%">Operating lease cost, net</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%">74&#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%">114&#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%">208&#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%">336&#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:8pt"><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;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;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="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%">Restructured lease cost (income)</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="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="background-color:#ffffff;padding:0 1pt"/></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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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="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%">&#8212;&#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%">&#8212;&#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%">(136)</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 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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">&#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%">&#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%">109&#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 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="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%">&#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;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%">&#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 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%">&#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;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%">(27)</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="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><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><tr style="height:11pt"><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;border-top:1pt solid #000000;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"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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;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 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%">74&#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%">114&#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%">208&#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%">309&#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><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 style="margin-bottom:10pt"><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 September&#160;30, 2022 and December&#160;31, 2021 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.924%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.362%"/><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:11.363%"/><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%">September 30, 2022</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, 2021</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%">1,248&#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%">292&#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="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 style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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 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,271&#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%">351&#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="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 style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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%">(13)</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%">(12)</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%">&#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 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%">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"/></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%">&#8212;&#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&#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%">&#8212;&#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%">1&#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:10pt"><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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:86.437%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:11.363%"/><td style="width:0.1%"/><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="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="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%">October 2022&#160;to September 2023</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%">384&#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"/></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%">October 2023 to September 2024</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%">381&#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"/></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%">October 2024 to September 2025</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%">383&#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"/></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%">October 2025 to September 2026</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%">389&#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"/></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%">October 2026 to September 2027</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%">295&#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"/></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: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%">1,832&#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="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%">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%">(561)</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"/></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%">1,271&#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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:10pt"><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 and nine months ended September&#160;30, 2022 and 2021, was as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:50.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.461%"/><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:10.461%"/><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:10.461%"/><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:10.466%"/><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 September 30,</span></td><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%">Nine months ended September 30,</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%">2022</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%">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%">2022</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%">2021</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: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="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="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"/><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="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%">86&#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%">161&#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%">326&#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%">421&#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%">&#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 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%">&#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 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%">&#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 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%">35&#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%">&#8212;&#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"/><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"/><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&#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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text">LEASES<div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2027 under which it is responsible for related maintenance, taxes and insurance. The Company had one finance lease containing a bargain purchase option that was not renewed upon expiration of the lease during the second quarter of 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 our equipment operating leases had been extended through 2026. Additionally, as of March 25, 2022, in connection with extending through 2027, the terms of our expiring headquarters real estate operating lease for manufacturing, warehouse and office space have been modified beginning July 1, 2022 to reflect a smaller footprint at reduced costs. In accordance with Accounting Standards 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;), as a result of the extension, the related lease liability was remeasured and the right-of-use asset was adjusted for each lease at the time of modification in January 2021 and March 2022. The present value of the lease obligations for these leases were calculated using an incremental borrowing rate of 15.93% for the equipment lease and 16.96% for the real estate lease, which were the Company&#8217;s blended borrowing rates (including interest, annual facility fees, collateral management fees, bank fees and other miscellaneous lender fees) 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 other remaining lease obligations continues to be calculated using an incremental borrowing rate of 7.25% (which excludes the annual facility fee and other lender fees), 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 the operating leases is 4.7 years.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 expired in June 2021. 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 Standards 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 sublease income in future years as of December&#160;31, 2020. The Company continued to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and continued to accrete those liabilities in accordance with Accounting Standards 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 2021 Annual Report.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no finance lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021. Components of the operating and restructured lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021, were as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:50.401%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.161%"/><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:10.161%"/><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:10.161%"/><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:10.163%"/><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 September 30,</span></td><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%">Nine months ended September 30,</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%">2022</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%">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%">2022</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%">2021</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 lease cost (income)</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"/><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"/><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 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 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%">(9)</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="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%">(90)</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%">(87)</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%">Lease cost</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%">83&#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%">139&#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%">298&#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%">423&#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%">Operating lease cost, net</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%">74&#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%">114&#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%">208&#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%">336&#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:8pt"><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;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;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="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%">Restructured lease cost (income)</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="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="background-color:#ffffff;padding:0 1pt"/></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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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="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%">&#8212;&#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%">&#8212;&#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%">(136)</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 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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">&#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%">&#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%">109&#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 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="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%">&#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;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%">&#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 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%">&#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;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%">(27)</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="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><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><tr style="height:11pt"><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;border-top:1pt solid #000000;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"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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;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 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%">74&#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%">114&#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%">208&#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%">309&#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><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 style="margin-bottom:10pt"><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 September&#160;30, 2022 and December&#160;31, 2021 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.924%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.362%"/><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:11.363%"/><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%">September 30, 2022</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, 2021</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%">1,248&#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%">292&#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="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 style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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 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,271&#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%">351&#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="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 style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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%">(13)</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%">(12)</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%">&#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 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%">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"/></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%">&#8212;&#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&#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%">&#8212;&#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%">1&#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:10pt"><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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:86.437%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:11.363%"/><td style="width:0.1%"/><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="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="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%">October 2022&#160;to September 2023</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%">384&#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"/></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%">October 2023 to September 2024</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%">381&#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"/></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%">October 2024 to September 2025</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%">383&#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"/></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%">October 2025 to September 2026</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%">389&#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"/></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%">October 2026 to September 2027</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%">295&#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"/></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: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%">1,832&#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="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%">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%">(561)</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"/></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%">1,271&#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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:10pt"><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 and nine months ended September&#160;30, 2022 and 2021, was as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:50.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.461%"/><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:10.461%"/><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:10.461%"/><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:10.466%"/><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 September 30,</span></td><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%">Nine months ended September 30,</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%">2022</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%">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%">2022</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%">2021</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: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="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="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"/><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="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%">86&#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%">161&#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%">326&#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%">421&#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%">&#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 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%">&#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 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%">&#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 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%">35&#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%">&#8212;&#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"/><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"/><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&#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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730032848768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Debt</a></td>
<td class="text">DEBT<div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 11, 2020, we entered into two debt financing arrangements (together, the &#8220;Credit Facilities&#8221;) that allow for expanded borrowing capacity at a lower blended borrowing cost. 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 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. 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 to $3.5 million, subject to the borrowing base as set forth in the Inventory Loan Agreement. 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-month LIBOR rate (3.07% and 0.21% at September&#160;30, 2022 and December&#160;31, 2021, respectively) and is also subject to a service fee of 1% per month. The annualized interest rate at September&#160;30, 2022 and December&#160;31, 2021, which includes interest fees, the annual facility fee, bank fees and other miscellaneous lender fees, was 23.4% and 22.4%, 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. 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 term was automatically extended for one year on August 11, 2022, and now matures on August 11, 2023, subject to early termination upon  demand by the IF lender with 90 days&#8217; notice and otherwise in accordance with the terms of the Inventory Loan Agreement. The annual facility fee of $70&#160;thousand was paid during September of 2022 upon renewal. During the third quarter of 2022, as a result of a reduction in borrowing base following an updated inventory appraisal, the IF Lender consented to the company reducing its excess borrowings over an 8-week transition period in accordance with an agreed over-allowance schedule. The term is automatically extended in successive one (1) year increments unless terminated by either party in accordance with the Inventory Loan Agreement.</span></div><div style="margin-bottom:10pt"><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 and (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 (6.25% at September&#160;30, 2022 and 3.25% at December 31, 2021) plus (ii) 2%. At September&#160;30, 2022 and December&#160;31, 2021, the annualized interest rate, which includes interest fees and the annual facility fee, was 9.4% and 8.0%, respectively. The annualized interest rate on the collateral management fee was 6.0% at both September&#160;30, 2022 and December&#160;31, 2021. The Receivables Facility is also 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. 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 term was automatically extended for one year on August 11, 2022 and now matures on August 11, 2023, subject to early termination by either party in accordance with the terms of the Receivables Loan Agreement including by optional prepayment of the Receivables Facility along with an early termination fee, 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. The annual facility fee of $25&#160;thousand was accrued for during September of 2022 upon renewal.</span></div><div style="margin-bottom:10pt"><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 $1.6 million and $1.2 million at September&#160;30, 2022 and December&#160;31, 2021, respectively. Borrowings under the Receivables Facility were $0.4 million and $1.0 million at September&#160;30, 2022 and December&#160;31, 2021, respectively. These Credit Facilities are recorded in the Condensed Consolidated Balance Sheets as of September&#160;30, 2022 and December&#160;31, 2021 as a current liability under the caption &#8220;Credit line borrowings.&#8221; Outstanding balances include unamortized net issuance costs totaling $64 thousand and $84 thousand for the Inventory Facility and $21 thousand and $24 thousand for the Receivables Facility as of September&#160;30, 2022 and December&#160;31, 2021, respectively.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Promissory Note Payable</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September&#160;16, 2022, we entered into a short-term unsecured Promissory Note (the &#8220;2022 Promissory Note&#8221;) with Mei-Yun (Gina) Huang in the original principal amount of $0.5 million. Ms. Huang is a member of the Company&#8217;s board of directors. The total liability for the 2022 Promissory Note was $0.5 million at September&#160;30, 2022. Please refer to Note 12, &#8220;Related Party Transaction&#8221; for further detail.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Streeterville Notes</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">2022 Note</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April&#160;21, 2022, we entered into a note purchase agreement (the &#8220;2022 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 $2.0 million (the &#8220;2022 Streeterville Note&#8221;). The 2022 Streeterville Note was issued with an original issue discount of $215 thousand and Streeterville paid a purchase price of approximately $1.8 million for the 2022 Streeterville Note, from which the Company paid $15 thousand to Streeterville for Streeterville&#8217;s transaction expenses.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2022 Streeterville Note has a maturity date of April&#160;21, 2024, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the 2022 Streeterville Note at a premium, which is 5% during the first six months and 7.5% thereafter. Prepayments at the reduced rate in the first six months are limited to 50% of the outstanding balance. Beginning on December 1, 2022, Streeterville may require the Company to redeem up to $225 thousand of the 2022 Streeterville Note in any calendar month. The Company has the right on five occasions, but not during more than three consecutive months, 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 2022 Streeterville Note by 1.5%.</span></div><div style="margin-bottom:10pt"><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 2022 Streeterville Note, net of discount and financing fees, was $1.9 million at September&#160;30, 2022. Unamortized loan discount and debt issuance costs for the 2022 Streeterville Note were $183 thousand at September&#160;30, 2022.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the event our common stock is delisted from Nasdaq, the amount outstanding under the 2022 Streeterville Note will automatically increase by 15% as of the date of such delisting.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">2021 Note</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April&#160;27, 2021, we entered into a note purchase agreement with Streeterville pursuant to which we sold and issued to Streeterville a promissory note in the principal amount of approximately $1.7 million (the &#8220;2021 Streeterville Note&#8221;). The 2021 Streeterville Note was issued with an original issue discount of $194 thousand and Streeterville paid a purchase price of $1.5 million for the 2021 Streeterville Note, after deduction of $15 thousand of Streeterville&#8217;s transaction expenses.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2021 Streeterville Note has a maturity date of April&#160;27, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the 2021 Streeterville Note at a premium, which is 5% during the first three months and 10% thereafter. Prepayments at the reduced rate in the first three months are limited to 50% of the outstanding balance. Beginning on November 1, 2021, Streeterville may require the Company to redeem up to $205 thousand of the 2021 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, and Streeterville agreed to accept a fourth redemption deferral on the same terms during the third quarter of 2022. Each exercise of this deferral right by the Company will increase the amount outstanding under the 2021 Streeterville Note by 1.5%. The Company exercised this right twice during the fourth quarter of 2021, once during the second quarter of 2022 and once during the third quarter of 2022. The Company and Streeterville have agreed to exchange common stock for the required redemption in October 2022, totaling $205 thousand converted to equity.</span></div><div style="margin-bottom:10pt"><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 2021 Streeterville Note, net of discount and financing fees, was $0.4 million and $1.7 million at September&#160;30, 2022 and December&#160;31, 2021, respectively. Unamortized loan discount and debt issuance costs for the 2021 Streeterville Note were $61 thousand and $140 thousand at September&#160;30, 2022 and December&#160;31, 2021, respectively.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the event our common stock is delisted from Nasdaq, the amount outstanding under the 2021 Streeterville Note will automatically increase by 15% as of the date of such delisting.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PPP Loan</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On 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% per annum. 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 (&#8220;SBA&#8221;) on February 11, 2021. The $801 thousand forgiveness income was recorded as other income in the Condensed Consolidated Statements of Operations during the nine months ended September 30, 2021.</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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/topic&amp;trid=2208564<br><br>Reference 2: 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 1B<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 3: 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 1C<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 4: 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 1I<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 5: 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 1I<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 6: 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(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: 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 1B<br> -Subparagraph (g)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 8: 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 1C<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 9: 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 1C<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495334-112611<br><br>Reference 10: 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 1E<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<br><br>Reference 11: 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 1B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 12: 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 1I<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495371-112611<br><br>Reference 13: 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 1B<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730025146512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text">INCOME TAXES<div style="margin-bottom:10pt;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 and nine months ended September&#160;30, 2022 and 2021, 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="margin-bottom:10pt;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 September&#160;30, 2022 and December&#160;31, 2021, we had a full valuation allowance recorded against our deferred tax assets.</span></div><div style="margin-bottom:10pt;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="margin-bottom:10pt;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, 2021, we had a net operating loss carry-forward of approximately $125.4 million for federal income tax purposes ($77.2 million for state and local income tax purposes). However, due to changes in our capital structure, approximately $71.0 million of the $125.4 million is available to offset future taxable income after the application of the limitations found under Section 382 of the Internal Revenue Code of 1986, as amended. 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 $9.6 million and $7.1 million in federal net operating losses generated in 2021 and 2020, 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.5 million will begin to expire in 2023 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 11, &#8220;Income Taxes,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2021 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=122134291&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 https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=122134291&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 https://asc.fasb.org/extlink&amp;oid=121826272&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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br><br>Reference 9: 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(h)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729944503456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [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="Show.showAR( this, 'defref_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock', window );">Stockholders' Equity</a></td>
<td class="text">STOCKHOLDERS&#8217; EQUITY<div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">June 2022 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2022, we completed the June 2022 Private Placement with certain institutional investors for the sale of 1,313,462 shares of our common stock at a purchase price of $1.30 per share. We also sold to the same institutional investors (i) June 2022 Pre-Funded Warrants to purchase 1,378,848 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants to purchase up to an aggregate of 2,692,310 shares of common stock at an exercise price of $1.30 per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $252&#160;thousand, plus $35&#160;thousand in expenses, and we also paid legal, accounting and other fees of $47&#160;thousand. Total offering costs of $334&#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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $3.2 million. We determined the exercise price of the June 2022 Pre-Funded Warrants to be nominal and, as such, have considered the 1,378,848 shares underlying them to be outstanding effective June 7, 2022, for purposes of calculating net loss per share. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In July 2022, all of the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of 2,692,310 shares remained outstanding, with a weighted average exercise price of $1.30 per share.  The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $3.5 million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 2021 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we completed the December 2021 Private Placement with certain institutional investors for the sale of 1,193,185 shares of our common stock at a purchase price of $3.52 per share. We also sold to the same institutional investors (i) December 2021 Pre-Funded Warrants to purchase 85,228 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants to purchase up to an aggregate of 1,278,413 shares of common stock at an exercise price of $3.52 per share. In connection with the December 2021 Private Placement, we paid the placement agent commission of $360&#160;thousand plus $42&#160;thousand in expenses and we also paid legal, accounting and other fees of $97&#160;thousand. Total offering costs of $499&#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, 2021. Net proceeds from the December 2021 Private Placement were approximately $4.0 million. We determined the exercise price of the December 2021 Pre-Funded Warrants to be nominal and, as such, considered the 85,228 shares underlying them to be outstanding effective December 16, 2021, for purposes of calculating net loss per share.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> In January 2022, all of the December 2021 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of 1,278,413 shares remained outstanding, with an exercise price of $3.52 per share. The December 2021 Warrants expire on December&#160;16, 2026. The exercise of the remaining December 2021 Warrants outstanding could provide us with cash proceeds of up to $4.5 million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">June 2021 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2021, we completed a registered direct offering of 990,100 shares of our common stock to certain institutional investors, at a purchase price of $5.05 per share. We paid the placement agent commissions of $400 thousand, plus $51 thousand in expenses, in connection with the June 2021 Equity Offering and we also paid legal and other fees of $18 thousand. Total offering costs of $469 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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $4.5 million.</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 31, 2020, 111,548 shares of the Series A Preferred Stock were converted into 22,310 shares of common stock. During the year ended December 31, 2021, 1,721,023 shares of Series A Preferred Stock were converted into 344,205 shares of common stock. The Series A Preferred Stock that was converted in 2021 was held by a Schedule 13D ownership group (under Section 13(d)(3) of the Securities Exchange Act of 1934, as amended, and Rule 13d-5 promulgated thereunder) that includes Fusion Park LLC (&#8220;Fusion Park&#8221;) and 5 Elements Global Fund L.P. (controlled affiliates of James Tu, the Company's former Executive Chairman and Chief Executive Officer), as well as Brilliant Start Enterprise Inc. (&#8220;Brilliant Start&#8221;) and Jag International Ltd. (controlled affiliates of Gina Huang, a member of the Company's board of directors). Upon 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><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 2020 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Issuance of Common Stock and Warrants</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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, the Investor 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 31, 2021. 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 January 2020 Warrants were approximately $2.3 million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">January 2020 Warrants issued to purchase an aggregate of 229,414 shares remain outstanding at September&#160;30, 2022 with a weighted average exercise price of $3.67 per share. The exercise of warrants could provide us with cash proceeds of up to $0.8 million in the aggregate if all warrants are exercised. During the nine months ended September 30, 2022, no January 2020 Warrants were exercised. During the nine months ended September 30, 2021, 156,446 warrants were exercised resulting in total proceeds of $527&#160;thousand.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022 and 2021, we had the following outstanding January 2020 warrants to purchase shares of common stock:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:31.482%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.116%"/><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.266%"/><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.266%"/><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.270%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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%">As of September&#160;30, 2022</span></div></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;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%">As of September&#160;30, 2021</span></div></td><td colspan="3" style="padding:0 1pt"/><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="padding:0 1pt"/><td colspan="9" 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%">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%">187,734</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: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: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%">229,414</span></td><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Warrant Classification</span></div><div style="margin-bottom:10pt"><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 condensed 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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Stock-based compensation</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:49.200%"/><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.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.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.767%"/><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/>September 30,</span></td><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%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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: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%">&#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: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%">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%">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"/></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%">4&#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%">2&#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%">16&#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%">10&#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: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%">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%">35&#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%">97&#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%">370&#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 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%">17&#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%">39&#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%">115&#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%">387&#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></table></div><div style="margin-bottom:10pt"><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.2 million at September&#160;30, 2022, compared to $0.3 million at September&#160;30, 2021. 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 September&#160;30, 2022 is expected to be recognized is approximately 2.5 years.</span></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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%">Nine months ended<br/>September 30,</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%">2022</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%">2021</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%">0.77&#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%">4.18&#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%">0.95&#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%">5.39&#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.1</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.2</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%">3.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.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></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%">104.0&#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%">96.5&#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="3" style="display:none"/></tr></table></div><div style="margin-bottom:10pt"><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 nine months ended September 30, 2022 is presented as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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%">267,109&#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.46&#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%">226,820&#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%">0.95&#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%">Exercised</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%">(250)</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.45&#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%">Canceled/forfeited</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%">(135,447)</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%">3.03&#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;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 September 30, 2022</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:10pt;font-weight:400;line-height:100%">358,064&#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 #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%">2.03&#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 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.2</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 September 30, 2022</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%">291,379&#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%">2.21&#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%">7.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%">Exercisable at September 30, 2022</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%">118,920&#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%">3.21&#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%">5.6</span></td></tr><tr style="height:15pt"><td colspan="18" style="background-color:#ffffff;padding:0 1pt"/></tr></table></div><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 nine months ended September 30, 2022 is presented as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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%">2,400&#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%">7.14&#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%">40,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%">1.40&#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%">(40,800)</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.51&#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 September 30, 2022</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%">1,600&#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%">7.14&#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%">7.9</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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-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_ShareholdersEquityAndShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/topic&amp;trid=2228938<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>29
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730025200608">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text">COMMITMENTS AND CONTINGENCIES<div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022, we had approximately $1.0&#160;million in outstanding purchase commitments for inventory, of which $0.8&#160;million is expected to ship in the fourth quarter of 2022 and $0.2&#160;million is expected to ship in the first quarter of 2023 and beyond.</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="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 440<br> -URI https://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 440<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI https://asc.fasb.org/topic&amp;trid=2127136<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 (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730025283888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Other Income<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherIncomeAndExpensesAbstract', window );"><strong>Other Income and Expenses [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="Show.showAR( this, 'defref_us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock', window );">Other Income</a></td>
<td class="text">OTHER INCOME<div style="margin-bottom:10pt;margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Employee Retention Tax Credit</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The CARES Act, which was enacted on March 27, 2020, provides an ERTC that is a refundable tax credit against certain employer taxes. The ERTC was subsequently amended by the Taxpayer Certainty and Disaster Tax Relief Act of 2020, the Consolidated Appropriation Act of 2021, and the American Rescue Plan Act of 2021, all of which amended and extended the ERTC availability and guidelines under the CARES Act. Following these amendments, we and other businesses became retroactively eligible for the ERTC, and as a result of the foregoing legislation, are eligible to claim a refundable tax credit against the employer share of Social Security taxes equal to 70% of the qualified wages paid to employees between January 1, 2021 and September 30, 2021. Qualified wages are limited to $10,000 per employee per calendar quarter in 2021 for a maximum allowable ERTC per employee of $7,000 per calendar quarter in 2021. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For purposes of the amended ERTC, an eligible employer is defined as having experienced a significant (20% or more) decline in gross receipts during each of the first three 2021 calendar quarters when compared with the same quarter in 2019 or the immediately preceding quarter to the corresponding calendar quarter in 2019. The credit is taken against the Company&#8217;s share of Social Security Tax when the Company&#8217;s payroll provider files, or subsequently amends the applicable quarterly employer tax filings.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the amended guidelines, we are eligible to receive the ERTC for the second and third quarters of 2021. As part of the filing of our employer tax filings for the third quarter of 2021, we applied for and received a refund of $431&#160;thousand, and we amended our filing for the second quarter of 2021, for which we expect to receive an additional refund of approximately $445&#160;thousand. These amounts are recorded as other income in the Condensed Consolidated Statements of Operations during the quarter ended December&#160;31, 2021, and the $445&#160;thousand expected receivable is included in prepaid and other current assets in the Condensed Consolidated Balance Sheet as of September&#160;30, 2022 and December&#160;31, 2021.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PPP Loan</span></div>On April&#160;17, 2020, the Company was granted a loan from KeyBank in the amount of approximately $795&#160;thousand, pursuant to the PPP under the CARES Act, which was enacted on March 27, 2020. The funds were received on April 20, 2020 and accrued interest at a rate of 1% per annum. 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 SBA on February 11, 2021. The $801 thousand forgiveness income was recorded as other income in the Condensed Consolidated Statements of Operations during the nine months ended September 30, 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_OtherIncomeAndExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherIncomeAndOtherExpenseDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for other income or other expense items (both operating and nonoperating). Sources of nonoperating income or nonoperating expense that may be disclosed, include amounts earned from dividends, interest on securities, profits (losses) on securities, net and miscellaneous other income or income deductions.</p></div>
<a href="javascript:void(0);" onclick="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 720<br> -URI https://asc.fasb.org/topic&amp;trid=2122503<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 610<br> -URI https://asc.fasb.org/topic&amp;trid=49130413<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730020344912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transaction<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsAbstract', window );"><strong>Related Party Transactions [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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock', window );">Related Party Transaction</a></td>
<td class="text">RELATED PARTY TRANSACTIONOn September&#160;16, 2022, we entered into the 2022 Promissory Note with Ms. Huang  in the original principal amount of $0.5 million. Ms. Huang is a member of the Company&#8217;s board of directors. The 2022 Promissory Note is an unsecured obligation and has a maturity date of June&#160;16, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding in whole or in part at any time prior to the maturity date. Upon the occurrence of an event of default under the 2022 Promissory Note, Ms. Huang may, at her option, declare the amount outstanding under the Note immediately due and payable. After the occurrence of an event of default, Ms Huang may elect to have interest accrue on the 2022 Promissory Note at a rate per annum of 10%, or such lesser rate as permitted under applicable law. The total liability for the 2022 Promissory Note was $0.5 million at September&#160;30, 2022<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_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="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 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -URI https://asc.fasb.org/topic&amp;trid=2122745<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39691-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730019815168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Events</a></td>
<td class="text">SUBSEQUENT EVENTS<div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Unsecured Notes Payable</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On November 9, 2022, the Company issued a short-term Promissory Note in favor of Mei-Yun (Gina) Huang in the original principal amount of $350 thousand. Ms. Huang previously provided $450 thousand of bridge financing in September 2022 on the substantially the same terms.  Ms. Huang is a member of the Company&#8217;s board of directors.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The promissory note has a maturity date of nine months from the date of issuance and bears interest at an annual rate of eight percent. The outstanding principal balance and all accrued interest thereon are due and payable at the maturity date. The Company may prepay the amounts outstanding under the note in whole or in part at any time prior to the maturity date.  Upon the occurrence of an event of default under the note, Ms. Huang may, at her option, declare the amount outstanding under the note immediately due and payable. After the occurrence of an event of default, Ms. Huang may elect to have interest accrue on the note at a rate per annum of ten percent, or such lesser rate as permitted under applicable law.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On November 4, 2022, the Company issued a short-term Promissory Note in favor of Jay Huang in the original principal amount of $250 thousand (the &#8220;Huang Note&#8221;). In October of 2022, Mr. Huang also provided $50 thousand of bridge financing on the substantially the same terms as the Huang Note.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Huang Note has a maturity date of nine months from the date of issuance and bears interest at an annual rate of eight percent. The outstanding principal balance and all accrued interest thereon are due and payable at the maturity date. The Company may prepay the amounts outstanding under the Huang Note in whole or in part at any time prior to the maturity date.  Upon the occurrence of an event of default under the Huang Note, Mr. Huang may, at his option, declare the amount outstanding under the Huang Note immediately due and payable. After the occurrence of an event of default, Mr. Huang </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">may elect to have interest accrue on the Huang Note at a rate per annum of ten percent, or such lesser rate as permitted under applicable law.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Exchange Agreement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 10, 2022, we entered into an Exchange Agreement (the &#8220;Exchange Agreement&#8221;) with Streeterville, to whom we previously sold and issued the 2021 Streeterville Note.  Pursuant to the Exchange Agreement, the Company and Streeterville have agreed to (i) partition from the 2021 Streeterville Note a new Promissory Note (the &#8220;October Partitioned Note&#8221;) in the original principal amount of $205 thousand (the &#8220;October Exchange Amount&#8221;), (ii) cause the outstanding balance of the 2021Streeterville Note to be reduced by an amount equal to the October Exchange Amount, and (iii) exchange (the &#8220;Exchange&#8221;) the Partitioned Note for 385,918 shares (the &#8220;October Exchange Shares&#8221;) of the Company&#8217;s common stock.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The October Exchange was each priced at-the-market under Nasdaq rules pursuant to one or more exemptions from the registration requirements of the Securities Act of 1933, as amended.  There are no gross proceeds to the Company in respect of the October Exchange, provided that the Exchange satisfied a redemption notice provided by Streeterville under the terms of the 2021 Streeterville Note, pursuant to which the Company otherwise would be required to redeem $205 thousand of the 2021 Streeterville Note in cash, 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_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023413776">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><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 and nine months ended September&#160;30, 2022 and 2021 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, 2021 (&#8220;2021 Annual Report&#8221;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2021 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 style="margin-bottom:10pt"><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 September&#160;30, 2022 and December&#160;31, 2021, Condensed Consolidated Statements of Operations for the three and nine months ended September&#160;30, 2022 and 2021, Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the three and nine months ended September&#160;30, 2022 and 2021, and Condensed Consolidated Statements of Cash Flows for the three and nine months ended September&#160;30, 2022 and 2021.</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="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of estimates</a></td>
<td class="text"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Certain risks and concentrations</a></td>
<td class="text"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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 September 30, 2022, sales to a regional commercial lighting retrofit company accounted for approximately 32% of net sales. For the three months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 19%, 17% and 27% 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 36% of net sales for the same period.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the nine months ended September 30, 2022, sales to our primary distributor for the U.S. Navy, a regional commercial lighting retrofit company, and a commercial building system provider, accounted for approximately 13%, 15%, and 10% 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 17% of net sales for the same period. For the nine months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 33%, 10% and 17% 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 43% of net sales for the same period.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A regional commercial lighting retrofit company, a commercial building systems provider, and a U.S. Navy mechanical contractor accounted for approximately 25%, 12%, and 12% of net trade accounts receivable, respectively, at September&#160;30, 2022. At December&#160;31, 2021, a distributor to the U.S. Department of Defense accounted for 20% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 36% of our net trade accounts receivable.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">One offshore supplier accounted for approximately 17% and 18%, respectively, of our total expenditures for the three and nine months ended September&#160;30, 2022. For the three and nine months ended September&#160;30, 2021, one offshore supplier accounted for approximately 19% and 30%, respectively, of total expenditures.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At September&#160;30, 2022, one offshore supplier accounted for approximately 45% of our trade accounts payable balance. At December&#160;31, 2021, this offshore supplier accounted for approximately 60% 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="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recent accounting pronouncements</a></td>
<td class="text"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent accounting pronouncement</span></div><div style="margin-bottom:10pt"><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 but do not expect any material financial statement impact upon adoption.</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="Show.showAR( this, 'defref_us-gaap_RevenueRecognitionPolicyTextBlock', window );">Revenue</a></td>
<td class="text"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue</span></div><div style="margin-bottom:10pt"><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 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 </span></div>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="Show.showAR( this, 'defref_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy', window );">Accounts Receivable</a></td>
<td class="text"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our trade accounts receivable consists of amounts billed to and currently due from customers. Our customers are 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 a third-party account receivable insurance program with a very 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 credit-worthiness ratings and metrics that significantly assist us in evaluating the credit worthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of account receivables 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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 for major 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="Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Net loss per share</a></td>
<td class="text"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><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="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyPolicy', window );">Product warranties</a></td>
<td class="text"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We warrant our commercial and MMM LED products and controls for periods generally ranging from <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_3aa032ef-d1be-49b9-9d46-a1940c7bf3fc"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_c24d493e-2d1f-4b2e-a4a3-7b64303ed106">five</span></span> to ten 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><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Financial Instruments</a></td>
<td class="text"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">June 2022 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2022, we completed a private placement (the &#8220;June 2022 Private Placement&#8221;) with certain institutional investors for the sale of 1,313,462 shares of our common stock at a purchase price of $1.30 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#8220;June 2022 Pre-Funded Warrants&#8221;) to purchase 1,378,848 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the June 2022 Pre-Funded Warrants, the &#8220;June 2022 Warrants&#8221;) to purchase up to an aggregate of 2,692,310 shares of common stock at an exercise price of $1.30 per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $252&#160;thousand, plus $35&#160;thousand in expenses, and we also paid legal, accounting and other fees of $47&#160;thousand. Total offering costs of $334&#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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $3.2 million. We determined the exercise price of the June 2022 Pre-Funded Warrants to be nominal and, as such, have considered the 1,378,848 shares underlying them to be outstanding effective June 7, 2022, for purposes of calculating net loss per share. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In July 2022, all of the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of 2,692,310 shares remained outstanding, with a weighted average exercise price of $1.30 per share. The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $3.5 million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">December 2021 Private Placement</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, we completed a private placement (the &#8220;December 2021 Private Placement&#8221;) with certain institutional investors for the sale of 1,193,185 shares of our common stock at a purchase price of $3.52 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#8220;December 2021 Pre-Funded Warrants&#8221;) to purchase 85,228 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the December 2021 Pre-Funded Warrants, the &#8220;December 2021 Warrants&#8221;) to purchase up to an aggregate of 1,278,413 shares of common stock at an exercise price of $3.52 per share. In connection with the December 2021 Private Placement, we paid the placement agent commissions of $360&#160;thousand, plus $42&#160;thousand in expenses, and we also paid legal, accounting and other fees of $97&#160;thousand. Total offering costs of $499&#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, 2021. Net proceeds to us from the December 2021 Private Placement were approximately $4.0 million. We determined the exercise price of the December 2021 Pre-Funded Warrants to be nominal and, as such, have considered the 85,228 shares underlying them to be outstanding effective December 16, 2021, for purposes of calculating net loss per share. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2022, all of the December 2021 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of 1,278,413 shares remained outstanding, with an exercise price of $3.52 per share. The exercise of the remaining December 2021 Warrants outstanding could provide us with cash proceeds of up to $4.5 million in the aggregate.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">June 2021 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2021, we completed a registered direct offering of 990,100 shares of our common stock to certain institutional investors, at a purchase price of $5.05 per share (the &#8220;June 2021 Equity Offering&#8221;). We paid the placement agent commissions of $400 thousand, plus $51 thousand in expenses, in connection with the June 2021 Equity Offering, and we also paid legal and other fees of $18&#160;thousand. Total offering costs of $469&#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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $4.5 million.</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">January 2020 Equity Offering</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2020, we completed a registered direct offering 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 (the &#8220;Investor Warrants&#8221;) in a concurrent private placement (together with the concurrent registered direct offering, the &#8220;January 2020 Equity Offering&#8221;) for a purchase price of $0.625 per warrant. 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 (together with the Investor Warrants, the &#8220;January 2020 Warrants&#8221;).</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022, January 2020 Warrants to purchase an aggregate of 229,414 shares remain outstanding with a weighted average exercise price of $3.67 per share. The exercise of these warrants could provide us with cash proceeds of up to $0.8 million in the aggregate. During the nine months ended September 30, 2022, none of these warrants were exercised. </span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2021, January 2020 Warrants to purchase an aggregate of 310,860 shares remained outstanding with a weighted average exercise price of $3.59 per share. During the nine months ended September 30, 2021, 156,446 January 2020 Warrants were exercised resulting in total proceeds of $527&#160;thousand.</span></div><div style="margin-bottom:10pt"><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 Measurements</span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit risk.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/extlink&amp;oid=126941378&amp;loc=d3e61044-112788<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124432515&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 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13279-108611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126899994&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 https://asc.fasb.org/extlink&amp;oid=126899994&amp;loc=d3e18823-107790<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/topic&amp;trid=2196771<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730024216064">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of revenue</a></td>
<td class="text"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:55.206%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.110%"/><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:9.110%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><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:9.110%"/><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:9.114%"/><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/>September 30,</span></td><td colspan="3" style="padding:0 1pt"/><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%">Nine months ended<br/>September 30,</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%">2022</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%">2021</span></td><td colspan="3" style="padding:0 1pt"/><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%">2022</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%">2021</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%">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="background-color:#cceeff;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:2px 1pt;text-align: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></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%">1,288&#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,522&#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"/><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%">3,397&#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%">3,513&#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%">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%">476&#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,227&#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"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,908&#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,947&#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: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%">1,764&#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%">2,749&#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 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%">5,305&#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%">7,460&#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></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="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Reconciliation of basic and diluted income (loss) per share</a></td>
<td class="text"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a reconciliation of basic and diluted loss per share computations (in thousands):</span></div><div style="margin-bottom:10pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:55.506%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.110%"/><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:9.110%"/><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:9.110%"/><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:9.113%"/><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/>September 30,</span></td><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%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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%">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="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%">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%">(2,662)</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,140)</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%">(7,969)</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%">(5,255)</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: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="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #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%">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="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="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%">Basic and diluted 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%">9,190&#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%">5,086&#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%">7,608&#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,309&#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"/><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="Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Schedule of warranty activity</a></td>
<td class="text"><div style="margin-bottom:10pt"><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 style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:55.806%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.110%"/><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:9.110%"/><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:9.110%"/><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:9.114%"/><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/>September 30,</span></td><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%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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%">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%">315&#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%">239&#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%">295&#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%">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"/></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, net of changes in inventory reserves for replacements</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%">(23)</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%">10&#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%">(17)</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%">49&#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%">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%">(57)</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"/><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%">(29)</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%">16&#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 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%">7&#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%">(13)</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)</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%">(52)</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%">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%">242&#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="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%">242&#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"/></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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730020286688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock', window );">Schedule of restructuring reserve by type of cost</a></td>
<td class="text"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:81.632%"/><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:16.168%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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></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="3" style="display:none"/><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%">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"/></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 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="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%">(11)</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:700;line-height:100%">Balance at September 30, 2021</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%">&#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"/></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><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730020285456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of inventory</a></td>
<td class="text"><div style="margin-bottom:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.062%"/><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.064%"/><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%">September 30,<br/>2022</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/>2021</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%">3,584&#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,882&#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%">5,231&#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,034&#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,659)</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,050)</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%">6,156&#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%">7,866&#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:10pt"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:48.299%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.062%"/><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.062%"/><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:11.062%"/><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:11.065%"/><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/>September 30,</span></td><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%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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,792)</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,956)</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,050)</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,894)</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%">(241)</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%">34&#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%">(442)</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%">(64)</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%">21&#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%">36&#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%">278&#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%">72&#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%">Write-off for disposed inventory</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%">353&#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%">&#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%">555&#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%">&#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 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:#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:10pt;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:10pt;font-weight:400;line-height:100%">(2,659)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:10pt;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:10pt;font-weight:400;line-height:100%">(2,886)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:10pt;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:10pt;font-weight:400;line-height:100%">(2,659)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:10pt;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:10pt;font-weight:400;line-height:100%">(2,886)</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"/></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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730020370240">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Schedule of property and equipment</a></td>
<td class="text"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.062%"/><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.064%"/><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%">September 30,<br/>2022</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/>2021</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,096&#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,308&#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%">413&#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%">384&#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%">81&#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%">83&#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%">86&#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%">86&#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,144&#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,194&#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%">141&#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"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">mUVe</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;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:100%"> ultraviolet-C light disinfection robots (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%">&#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%">105&#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%">Projects in progress</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%">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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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:#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%">3,042&#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%">3,477&#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><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%">Less: accumulated 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:10pt;font-weight:400;line-height:100%">(2,609)</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,802)</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 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:#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%">433&#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%">675&#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></table><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>38
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023405952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Components of lease cost and supplemental cash flow information</a></td>
<td class="text">Components of the operating and restructured lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021, were as follows (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:50.401%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.161%"/><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:10.161%"/><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:10.161%"/><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:10.163%"/><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 September 30,</span></td><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%">Nine months ended September 30,</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%">2022</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%">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%">2022</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%">2021</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 lease cost (income)</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"/><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"/><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 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 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%">(9)</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="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%">(90)</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%">(87)</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%">Lease cost</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%">83&#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%">139&#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%">298&#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%">423&#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%">Operating lease cost, net</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%">74&#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%">114&#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%">208&#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%">336&#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:8pt"><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;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;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="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%">Restructured lease cost (income)</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="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="background-color:#ffffff;padding:0 1pt"/></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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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="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%">&#8212;&#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%">&#8212;&#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%">(136)</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 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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">&#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%">&#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%">109&#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 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="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%">&#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;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%">&#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 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%">&#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;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%">(27)</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="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><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><tr style="height:11pt"><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;border-top:1pt solid #000000;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"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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;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 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%">74&#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%">114&#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%">208&#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%">309&#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><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><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="Show.showAR( this, 'defref_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock', window );">Schedule of supplemental balance sheet information</a></td>
<td class="text"><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 September&#160;30, 2022 and December&#160;31, 2021 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:72.924%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.362%"/><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:11.363%"/><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%">September 30, 2022</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, 2021</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%">1,248&#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%">292&#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="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 style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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 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,271&#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%">351&#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="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 style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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%">(13)</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%">(12)</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%">&#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 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%">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"/></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%">&#8212;&#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&#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%">&#8212;&#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%">1&#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><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock', window );">Schedule of future maturities of finance lease liabilities</a></td>
<td class="text"><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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:86.437%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:11.363%"/><td style="width:0.1%"/><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="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="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%">October 2022&#160;to September 2023</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%">384&#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"/></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%">October 2023 to September 2024</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%">381&#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"/></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%">October 2024 to September 2025</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%">383&#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"/></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%">October 2025 to September 2026</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%">389&#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"/></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%">October 2026 to September 2027</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%">295&#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"/></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: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%">1,832&#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="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%">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%">(561)</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"/></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%">1,271&#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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of future maturities of operating lease liabilities</a></td>
<td class="text"><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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:86.437%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:11.363%"/><td style="width:0.1%"/><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="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="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%">October 2022&#160;to September 2023</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%">384&#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"/></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%">October 2023 to September 2024</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%">381&#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"/></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%">October 2024 to September 2025</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%">383&#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"/></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%">October 2025 to September 2026</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%">389&#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"/></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%">October 2026 to September 2027</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%">295&#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"/></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: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%">1,832&#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="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%">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%">(561)</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"/></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%">1,271&#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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table><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="Show.showAR( this, 'defref_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock', window );">Supplemental cash flow information related to leases</a></td>
<td class="text"><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 and nine months ended September&#160;30, 2022 and 2021, was as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:50.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.461%"/><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:10.461%"/><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:10.461%"/><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:10.466%"/><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 September 30,</span></td><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%">Nine months ended September 30,</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%">2022</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%">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%">2022</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%">2021</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: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="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="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"/><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="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%">86&#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%">161&#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%">326&#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%">421&#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%">&#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 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%">&#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 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%">&#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 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%">35&#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%">&#8212;&#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"/><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"/><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&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lease, Supplemental Balance Sheet Information [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Supplemental Cash Flow Information Related to Leases</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>39
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023405952">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [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="Show.showAR( this, 'defref_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock', window );">Schedule of stockholders' equity note, warrants or rights</a></td>
<td class="text"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of September&#160;30, 2022 and 2021, we had the following outstanding January 2020 warrants to purchase shares of common stock:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:31.482%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.116%"/><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.266%"/><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.266%"/><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.270%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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%">As of September&#160;30, 2022</span></div></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;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%">As of September&#160;30, 2021</span></div></td><td colspan="3" style="padding:0 1pt"/><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="padding:0 1pt"/><td colspan="9" 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%">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%">187,734</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: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: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%">229,414</span></td><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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Summary of stock-based compensation expense</a></td>
<td class="text"><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><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:49.200%"/><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.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.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.767%"/><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/>September 30,</span></td><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%">Nine months ended<br/>September 30,</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%">2022</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%">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%">2022</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%">2021</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: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%">&#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: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%">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%">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"/></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%">4&#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%">2&#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%">16&#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%">10&#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: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%">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%">35&#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%">97&#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%">370&#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 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%">17&#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%">39&#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%">115&#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%">387&#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></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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;margin-bottom:5pt;vertical-align:text-bottom;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%">Nine months ended<br/>September 30,</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%">2022</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%">2021</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%">0.77&#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%">4.18&#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%">0.95&#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%">5.39&#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.1</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.2</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%">3.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.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></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%">104.0&#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%">96.5&#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="3" style="display:none"/></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="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Summary of option activity</a></td>
<td class="text"><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 nine months ended September 30, 2022 is presented as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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%">267,109&#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.46&#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%">226,820&#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%">0.95&#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%">Exercised</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%">(250)</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.45&#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%">Canceled/forfeited</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%">(135,447)</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%">3.03&#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;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 September 30, 2022</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:10pt;font-weight:400;line-height:100%">358,064&#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 #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%">2.03&#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 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.2</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 September 30, 2022</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%">291,379&#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%">2.21&#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%">7.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%">Exercisable at September 30, 2022</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%">118,920&#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%">3.21&#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%">5.6</span></td></tr><tr style="height:15pt"><td colspan="18" style="background-color:#ffffff;padding:0 1pt"/></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock', window );">Summary of restricted stock activity</a></td>
<td class="text"><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 nine months ended September 30, 2022 is presented as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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%">2,400&#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%">7.14&#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%">40,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%">1.40&#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%">(40,800)</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.51&#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 September 30, 2022</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%">1,600&#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%">7.14&#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%">7.9</span></td></tr><tr><td colspan="3" style="display:none"/></tr></table><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_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=6784392&amp;loc=d3e188667-122775<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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>40
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729944444752">
<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="2">9 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Dec. 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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=efoi_TotalExpendituresMember', window );">Total Expenditures | Supplier concentration risk | Offshore Supplier 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="nump">17.00%<span></span>
</td>
<td class="nump">19.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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=efoi_TotalExpendituresMember', window );">Total Expenditures | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18.00%<span></span>
</td>
<td class="nump">30.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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsPayableMember', window );">Accounts Payable | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">45.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60.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="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_RegionalCommercialLightingRetrofitCompanyMember', window );">Regional Commercial Lighting Retrofit Company | Revenue | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="nump">32.00%<span></span>
</td>
<td class="nump">27.00%<span></span>
</td>
<td class="nump">15.00%<span></span>
</td>
<td class="nump">17.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="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_RegionalCommercialLightingRetrofitCompanyMember', window );">Regional Commercial Lighting Retrofit Company | Accounts receivable | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.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="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_DistributorToTheU.S.NavyMember', window );">Distributor To The U.S. Navy | Revenue | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">19.00%<span></span>
</td>
<td class="nump">13.00%<span></span>
</td>
<td class="nump">33.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="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_ShipbuilderForUSNavyMember', window );">Shipbuilder For U.S. Navy | Revenue | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17.00%<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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_ShipbuilderForUSNavyMember', window );">Shipbuilder For U.S. Navy | Accounts receivable | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36.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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember', window );">Distributor To The U.S. Navy Combined With Sales To Shipbuilders | Revenue | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">36.00%<span></span>
</td>
<td class="nump">17.00%<span></span>
</td>
<td class="nump">43.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="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_CommercialBuildingSystemsProviderMember', window );">Commercial Building Systems Provider | Revenue | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_CommercialBuildingSystemsProviderMember', window );">Commercial Building Systems Provider | Accounts receivable | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.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="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_USNavyMechanicalContractorMember', window );">U.S. Navy Mechanical Contractor | Accounts receivable | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12.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="Show.showAR( this, 'defref_srt_MajorCustomersAxis=efoi_DistributorToTheUSDepartmentOfDefenseMember', window );">Distributor To The U.S. Department Of Defense | Accounts receivable | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</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">20.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_ConcentrationRiskLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://asc.fasb.org/extlink&amp;oid=123594938&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 https://asc.fasb.org/extlink&amp;oid=123594938&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 https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_ConcentrationRiskByBenchmarkAxis=efoi_TotalExpendituresMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=efoi_TotalExpendituresMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_OffshoreSupplierOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_OffshoreSupplierOneMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_srt_MajorCustomersAxis=efoi_RegionalCommercialLightingRetrofitCompanyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_DistributorToTheU.S.NavyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_srt_MajorCustomersAxis=efoi_ShipbuilderForUSNavyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_srt_MajorCustomersAxis=efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_CommercialBuildingSystemsProviderMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_CommercialBuildingSystemsProviderMember</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_USNavyMechanicalContractorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_USNavyMechanicalContractorMember</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_DistributorToTheUSDepartmentOfDefenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_DistributorToTheUSDepartmentOfDefenseMember</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>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023320848">
<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>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 1,764<span></span>
</td>
<td class="nump">$ 2,749<span></span>
</td>
<td class="nump">$ 5,305<span></span>
</td>
<td class="nump">$ 7,460<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">1,288<span></span>
</td>
<td class="nump">1,522<span></span>
</td>
<td class="nump">3,397<span></span>
</td>
<td class="nump">3,513<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 476<span></span>
</td>
<td class="nump">$ 1,227<span></span>
</td>
<td class="nump">$ 1,908<span></span>
</td>
<td class="nump">$ 3,947<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://asc.fasb.org/extlink&amp;oid=123596393&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://asc.fasb.org/extlink&amp;oid=126901519&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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 40<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 15: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<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 https://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 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 23: 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 https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>42
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023347712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Geographic information (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=us-gaap_NonUsMember', window );">Countries outside of the United States | Revenue | Geographic concentration risk</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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk (less than for geographic concentration risk for the three months ended June 30, 2022)</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.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_ConcentrationRiskLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126901519&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 https://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 https://asc.fasb.org/extlink&amp;oid=123594938&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 https://asc.fasb.org/extlink&amp;oid=123594938&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 https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_srt_StatementGeographicalAxis=us-gaap_NonUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730018922032">
<tr>
<th class="tl" colspan="1" 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)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="6">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 11, 2020</div></th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Jun. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2021 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Jun. 30, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($) </div>
<div>shares</div>
</th>
<th class="th">
<div>Sep. 30, 2021 </div>
<div>USD ($) </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="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Numerator:</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>
<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (2,662)<span></span>
</td>
<td class="num">$ (2,486)<span></span>
</td>
<td class="num">$ (2,821)<span></span>
</td>
<td class="num">$ (1,140)<span></span>
</td>
<td class="num">$ (2,473)<span></span>
</td>
<td class="num">$ (1,642)<span></span>
</td>
<td class="num">$ (7,969)<span></span>
</td>
<td class="num">$ (5,255)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_EarningsPerShareBasicAndDilutedEPSAbstract', window );"><strong>Denominator:</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>
<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="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,190<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,086<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,608<span></span>
</td>
<td class="nump">4,309<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,190<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,086<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,608<span></span>
</td>
<td class="nump">4,309<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1', window );">Reverse stock split ratio</a></td>
<td class="nump">0.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>
<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_EarningsPerShareBasicAndDilutedEPSAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Earnings Per Share, Basic and Diluted EPS</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EarningsPerShareBasicAndDilutedEPSAbstract</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_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: 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 https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<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 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<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(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: 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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<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 https://asc.fasb.org/extlink&amp;oid=124431687&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 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: 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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: 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 https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: 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 https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: 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 https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: 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 https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: 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 https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockholdersEquityNoteStockSplitConversionRatio1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187143-122770<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 45<br> -Paragraph 16<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-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_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<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 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-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>44
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023317392">
<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> shares in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_WarrantMember', window );">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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from net loss per share calculation (less than for options in the three months ended June 30, 2020) (in shares)</a></td>
<td class="nump">220<span></span>
</td>
<td class="nump">11<span></span>
</td>
<td class="nump">201<span></span>
</td>
<td class="nump">56<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from net loss per share calculation (less than for options in the three months ended June 30, 2020) (in shares)</a></td>
<td class="nump">175<span></span>
</td>
<td class="nump">175<span></span>
</td>
<td class="nump">175<span></span>
</td>
<td class="nump">289<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_StockOptionMember', window );">Options</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="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>
<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="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from net loss per share calculation (less than for options in the three months ended June 30, 2020) (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_WarrantMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729946958416">
<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">9 Months Ended</th>
</tr>
<tr><th class="th"><div>Sep. 30, 2022</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Commercial</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="Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></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="Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></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="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | MMM LED Products</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="Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></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="Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></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="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Commercial</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="Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></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="Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></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="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | MMM LED Products</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="Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></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="Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></td>
<td class="text">10 years<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Standard Product Warranty, Number of Years</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_CommercialProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_MMMLEDProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_MMMLEDProductsMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>46
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730019398320">
<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>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Balance at beginning of period</a></td>
<td class="nump">$ 315<span></span>
</td>
<td class="nump">$ 239<span></span>
</td>
<td class="nump">$ 295<span></span>
</td>
<td class="nump">$ 227<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="Show.showAR( this, 'defref_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements', window );">Warranty accruals for current period sales, net of changes in inventory reserves for replacements</a></td>
<td class="num">(23)<span></span>
</td>
<td class="nump">10<span></span>
</td>
<td class="num">(17)<span></span>
</td>
<td class="nump">49<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease', window );">Adjustments to existing warranties</a></td>
<td class="num">(57)<span></span>
</td>
<td class="nump">4<span></span>
</td>
<td class="num">(29)<span></span>
</td>
<td class="nump">16<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="Show.showAR( this, 'defref_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements', window );">In kind settlements made during the period</a></td>
<td class="nump">7<span></span>
</td>
<td class="num">(13)<span></span>
</td>
<td class="num">(7)<span></span>
</td>
<td class="num">(52)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Accrued warranty reserve at end of period</a></td>
<td class="nump">$ 242<span></span>
</td>
<td class="nump">$ 240<span></span>
</td>
<td class="nump">$ 242<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_efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Standard Product Warranty Accrual, Increase (Decrease) For (Payments) Recovery Of Settlements</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements</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_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Standard Product Warranty Accrual, Increase (Decrease) For Warranties Reserve For Replacements</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements</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_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=126907703&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 https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StandardProductWarrantyAccrualPreexistingIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729945874816">
<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="4">1 Months Ended</th>
<th class="th" colspan="3">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 16, 2021</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing 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">$ 18<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="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="text">&#160;<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 334<span></span>
</td>
<td class="nump">$ 470<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">229,414<span></span>
</td>
<td class="nump">310,860<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="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="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 527<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_June2022PrivatePlacementMember', window );">June 2022 Private Placement</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>
<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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">1,313,462<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</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">$ 1.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.30<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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">2,692,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,692,310<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 1.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.30<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="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">$ 252<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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">35<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">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>
<td class="text">&#160;<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="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="nump">334<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_EstimatedProceedsFromIssuanceOfWarrants', window );">Estimated proceeds from issuance of 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>
<td class="nump">$ 3,500<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_June2022PrivatePlacementMember', window );">June 2022 Private Placement | Pre-Funded 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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">1,378,848<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,378,848<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 0.0001<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>
<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_June2022PrivatePlacementMember', window );">June 2022 Private Placement | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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">2,692,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,692,310<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 1.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.30<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember', window );">December 2021 Private Placement</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>
<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="nump">1,193,185<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.52<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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">1,278,413<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,278,413<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 3.52<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.52<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="Show.showAR( this, 'defref_efoi_PaymentsForPlacementAgentCommissions', window );">Amount paid for placement agent commissions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 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>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="nump">42<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">97<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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">499<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,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>
<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="Show.showAR( this, 'defref_efoi_EstimatedProceedsFromIssuanceOfWarrants', window );">Estimated proceeds from issuance of 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>
<td class="nump">$ 4,500<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember', window );">December 2021 Private Placement | Pre-Funded 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85,228<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="nump">85,228<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember', window );">December 2021 Private Placement | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,278,413<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.52<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">990,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</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.05<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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.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>
<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="Show.showAR( this, 'defref_efoi_PaymentsForPlacementAgentCommissions', window );">Amount paid for placement agent commissions</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">$ 400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">51<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</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">$ 469<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and 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="nump">$ 4,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">187,734<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">269,180<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020InstitutionalInvestorMember', window );">January 2020 Institutional Investor</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>
<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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>
<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</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.3700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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="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>
<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="Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare', window );">Purchase price (USD per share)</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">$ 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>
<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020EquityOfferingPrivatePlacementMember', window );">January 2020 Equity Offering, Private Placement</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>
<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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="nump">48,185<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 4.9940<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41,680<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41,680<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020EquityOfferingMember', window );">January 2020 Equity Offering</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>
<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 3.67<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.59<span></span>
</td>
<td class="nump">$ 3.67<span></span>
</td>
<td class="nump">$ 3.59<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="Show.showAR( this, 'defref_efoi_PaymentsForPlacementAgentCommissions', window );">Amount paid for placement agent commissions</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">$ 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>
<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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>
<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="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing 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">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>
<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="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="text">&#160;<span></span>
</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">$ 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and 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="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>
<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="Show.showAR( this, 'defref_efoi_EstimatedProceedsFromIssuanceOfWarrants', window );">Estimated proceeds from issuance of 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>
<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<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">229,414<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">310,860<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="num">(156,446)<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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_EstimatedProceedsFromIssuanceOfWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Estimated Proceeds From Issuance Of Warrants</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EstimatedProceedsFromIssuanceOfWarrants</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_PaymentsForClearingFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments For Clearing Fees</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments For Placement Agent Commissions</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 shares.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights</td>
</tr>
<tr>
<td style="padding-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_PaymentsOfStockIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromWarrantExercises">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SaleOfStockNumberOfSharesIssuedInTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of non-option equity instruments exercised by participants.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SubsidiarySaleOfStockAxis=efoi_June2022PrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_June2022PrivatePlacementMember</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_ClassOfWarrantOrRightAxis=efoi_PreFundedWarrantsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ClassOfWarrantOrRightAxis=efoi_PreFundedWarrantsMember</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_ClassOfWarrantOrRightAxis=us-gaap_WarrantMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ClassOfWarrantOrRightAxis=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_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_December2021PrivatePlacementMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=efoi_January2020InstitutionalInvestorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020InstitutionalInvestorMember</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_January2020EquityOfferingPrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020EquityOfferingPrivatePlacementMember</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_January2020EquityOfferingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020EquityOfferingMember</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>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730016667472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring - Narrative (Details)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="5">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 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>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Apr. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Apr. 30, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Aug. 23, 2022 </div>
<div>d </div>
<div>$ / shares</div>
</th>
<th class="th">
<div>Jun. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 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="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_RestructuringCosts', window );">Restructuring expense (recovery)</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">$ 0<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (21)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Purchase price</a></td>
<td class="nump">$ 1,800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_CommonStockClosingBidPriceThreshold', window );">Closing bid price of common stock (in USD per share) | $ / 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="text">&#160;<span></span>
</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.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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold', window );">Number of consecutive days for which the bid price was below threshold | d</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Stockholders' equity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,209<span></span>
</td>
<td class="nump">$ 5,603<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,255<span></span>
</td>
<td class="nump">$ 1,526<span></span>
</td>
<td class="nump">$ 4,502<span></span>
</td>
<td class="nump">$ 1,526<span></span>
</td>
<td class="nump">$ 4,502<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,171<span></span>
</td>
<td class="nump">$ 3,432<span></span>
</td>
<td class="nump">$ 3,278<span></span>
</td>
<td class="nump">$ 1,714<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="Show.showAR( this, 'defref_efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified', window );">Warrant liability - modification</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">$ 1,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember', window );">December 2021 Private Placement</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_RestructuringCostAndReserveLineItems', window );"><strong>Restructuring Cost and Reserve [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Adjustments to Additional Paid in Capital, Warrant Reclassified</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified</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_CommonStockClosingBidPriceThreshold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Common Stock, Closing Bid Price Threshold</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_CommonStockClosingBidPriceThreshold</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>dtr-types: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_efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number Of Consecutive Days For Bid Price, Below Threshold</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_NumberOfConsecutiveDaysForBidPriceBelowThreshold</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_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_ProceedsFromIssuanceOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RestructuringCostAndReserveLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveLineItems</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<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(31))<br> -URI https://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(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: 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 https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: 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 https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_December2021PrivatePlacementMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730021763152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring - Reconciliation of Restructuring Liability (Details) - Restructuring liability<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 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="Show.showAR( this, 'defref_us-gaap_RestructuringReserveRollForward', window );"><strong>Restructuring Reserve [Roll Forward]</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="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Balance at December 31, 2020</a></td>
<td class="nump">$ 11<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Payments</a></td>
<td class="num">(11)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Balance at September 30, 2021</a></td>
<td class="nump">$ 0<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_PaymentsForRestructuring">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3367-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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 https://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RestructuringReserveRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RestructuringCostAndReserveAxis=us-gaap_FacilityClosingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>50
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730019374016">
<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>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterials', window );">Raw materials</a></td>
<td class="nump">$ 3,584<span></span>
</td>
<td class="nump">$ 3,882<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Finished goods</a></td>
<td class="nump">5,231<span></span>
</td>
<td class="nump">7,034<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryValuationReserves', window );">Reserves for excess, obsolete, and slow-moving inventories</a></td>
<td class="num">(2,659)<span></span>
</td>
<td class="num">(3,050)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">$ 6,156<span></span>
</td>
<td class="nump">$ 7,866<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InventoryFinishedGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoods</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: 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 (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InventoryRawMaterials">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterials</td>
</tr>
<tr>
<td style="padding-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_InventoryValuationReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of valuation reserve for inventory.</p></div>
<a href="javascript:void(0);" onclick="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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -URI https://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 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.BB)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryValuationReserves</td>
</tr>
<tr>
<td style="padding-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>51
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729944508992">
<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="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_efoi_InventoryValuationReservesRawMaterials', window );">Beginning balance</a></td>
<td class="num">$ (2,792)<span></span>
</td>
<td class="num">$ (2,956)<span></span>
</td>
<td class="num">$ (3,050)<span></span>
</td>
<td class="num">$ (2,894)<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="Show.showAR( this, 'defref_efoi_InventoryValuationReservesProvisionAccrual', window );">Accrual</a></td>
<td class="num">(241)<span></span>
</td>
<td class="nump">34<span></span>
</td>
<td class="num">(442)<span></span>
</td>
<td class="num">(64)<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="Show.showAR( this, 'defref_efoi_InventoryValuationReservesSalesOfInventory', window );">Reduction due to sold inventory</a></td>
<td class="nump">21<span></span>
</td>
<td class="nump">36<span></span>
</td>
<td class="nump">278<span></span>
</td>
<td class="nump">72<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="Show.showAR( this, 'defref_efoi_InventoryValuationReservesWriteOffs', window );">Write-off for disposed inventory</a></td>
<td class="nump">353<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">555<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_efoi_InventoryValuationReservesRawMaterials', window );">Reserves for excess, obsolete, and slow-moving inventories</a></td>
<td class="num">$ (2,659)<span></span>
</td>
<td class="num">$ (2,886)<span></span>
</td>
<td class="num">$ (2,659)<span></span>
</td>
<td class="num">$ (2,886)<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory, Reserve</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory Valuation Reserves, Provision (Accrual)</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory Valuation Reserves, Raw Materials</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory Valuation Reserves, Sales Of Inventory</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_InventoryValuationReservesWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Inventory Valuation Reserves, Write-Offs</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_InventoryValuationReservesWriteOffs</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>52
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730020316176">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories - Narrative (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Sep. 30, 2022 </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="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="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1', window );">Disposed inventory</a></td>
<td class="nump">$ 563<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_DisposalGroupIncludingDiscontinuedOperationInventory1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as inventory attributable to disposal group held for sale or disposed of.</p></div>
<a href="javascript:void(0);" onclick="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 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<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 3<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI https://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1</td>
</tr>
<tr>
<td style="padding-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_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729946978912">
<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="2">9 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Dec. 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="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>
<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="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization', window );">Finance lease right-of-use asset</a></td>
<td class="nump">$ 13<span></span>
</td>
<td class="text">&#160;<span></span>
</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="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization', window );">Property and equipment at cost</a></td>
<td class="nump">3,042<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,042<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,477<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization', window );">Less: accumulated depreciation</a></td>
<td class="num">(2,609)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,609)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,802)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization', window );">Property and equipment, net</a></td>
<td class="nump">433<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">433<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">675<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">42<span></span>
</td>
<td class="nump">$ 43<span></span>
</td>
<td class="nump">129<span></span>
</td>
<td class="nump">$ 143<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="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Loss on write-off of property and equipment</a></td>
<td class="nump">76<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">76<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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">1,096<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,096<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,308<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">413<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 413<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">384<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">81<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 81<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">83<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">86<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 86<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">86<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">1,144<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,144<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,194<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">141<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 141<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_UltravioletCLightDisinfectionRobotsMember', window );">Ultraviolet-C light disinfection robots</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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">0<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">105<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Loss on write-off of property and equipment</a></td>
<td class="nump">76<span></span>
</td>
<td class="text">&#160;<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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, gross</a></td>
<td class="nump">$ 68<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 68<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 135<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_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization, of right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="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 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-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_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation and amortization from plant, property, and equipment and right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="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 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.</p></div>
<a href="javascript:void(0);" onclick="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 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: 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> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.</p></div>
<a href="javascript:void(0);" onclick="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 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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(13))<br> -URI https://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> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_UltravioletCLightDisinfectionRobotsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_UltravioletCLightDisinfectionRobotsMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023295360">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Narrative (Details)<br></strong></div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasedAssetsLineItems', window );"><strong>Operating Leased Assets [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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseDiscountRate', window );">Operating lease, discount rate</a></td>
<td class="nump">7.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="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating lease, weighted average remaining lease term</a></td>
<td class="text">4 years 8 months 12 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment</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="Show.showAR( this, 'defref_us-gaap_OperatingLeasedAssetsLineItems', window );"><strong>Operating Leased Assets [Line Items]</strong></a></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="Show.showAR( this, 'defref_efoi_LesseeOperatingLeaseInterestRateEffectiveRate', window );">Operating lease, borrowing rate</a></td>
<td class="nump">15.93%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_RealEstateMember', window );">Real Estate</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="Show.showAR( this, 'defref_us-gaap_OperatingLeasedAssetsLineItems', window );"><strong>Operating Leased Assets [Line Items]</strong></a></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="Show.showAR( this, 'defref_efoi_LesseeOperatingLeaseInterestRateEffectiveRate', window );">Operating lease, borrowing rate</a></td>
<td class="nump">16.96%<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lessee, Operating Lease, Interest Rate, Effective Rate</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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_LesseeOperatingLeaseDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918673-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123414884&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeasedAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasedAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_RealEstateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RealEstateMember</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>55
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729946888816">
<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>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_SubleaseIncome', window );">Sub-lease income</a></td>
<td class="num">$ (9)<span></span>
</td>
<td class="num">$ (25)<span></span>
</td>
<td class="num">$ (90)<span></span>
</td>
<td class="num">$ (87)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Lease cost</a></td>
<td class="nump">83<span></span>
</td>
<td class="nump">139<span></span>
</td>
<td class="nump">298<span></span>
</td>
<td class="nump">423<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="Show.showAR( this, 'defref_efoi_OperatingLeaseCostNetOfSubleaseIncome', window );">Operating lease cost, net</a></td>
<td class="nump">74<span></span>
</td>
<td class="nump">114<span></span>
</td>
<td class="nump">208<span></span>
</td>
<td class="nump">336<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="Show.showAR( this, 'defref_efoi_RestructuredLeaseSubleaseIncome', window );">Sub-lease income</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(136)<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="Show.showAR( this, 'defref_efoi_RestructuredLeaseOperatingLeaseCost', window );">Lease cost</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">109<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="Show.showAR( this, 'defref_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome', window );">Restructured lease income, net</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(27)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Total lease cost, net</a></td>
<td class="nump">$ 74<span></span>
</td>
<td class="nump">$ 114<span></span>
</td>
<td class="nump">$ 208<span></span>
</td>
<td class="nump">$ 309<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Operating Lease, Cost, Net Of Sublease Income</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Restructured Lease, Operating Lease, Cost</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Restructured Lease, Operating Lease, Cost, Net Of Sublease Income</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Restructured Lease, Sublease Income</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&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 https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123414884&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&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 https://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729944389936">
<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>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 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="Show.showAR( this, 'defref_efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract', 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="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">$ 1,248<span></span>
</td>
<td class="nump">$ 292<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Operating lease liabilities</a></td>
<td class="nump">1,271<span></span>
</td>
<td class="nump">351<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract', 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="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="Show.showAR( this, 'defref_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation', window );">Allowances for depreciation</a></td>
<td class="num">(13)<span></span>
</td>
<td class="num">(12)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAsset', window );">Finance lease assets, net</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Finance lease liabilities</a></td>
<td class="nump">$ 0<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_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance Lease, Assets And Liabilities, Lessee</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract</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_FinanceLeaseRightOfUseAssetAccumulatedDepreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance Lease, Right-Of-Use Asset, Accumulated Depreciation</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Finance Lease, Right-Of-Use Asset, Gross</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Operating Lease, Assets And Liabilities, Lessee</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract</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_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729946887424">
<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>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 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="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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths', window );">October 2022&#160;to September 2023</a></td>
<td class="nump">$ 384<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo', window );">October 2023 to September 2024</a></td>
<td class="nump">381<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree', window );">October 2024 to September 2025</a></td>
<td class="nump">383<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour', window );">October 2025 to September 2026</a></td>
<td class="nump">389<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive', window );">October 2026 to September 2027</a></td>
<td class="nump">295<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total future undiscounted lease payments</a></td>
<td class="nump">1,832<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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="num">(561)<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="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total lease obligations</a></td>
<td class="nump">$ 1,271<span></span>
</td>
<td class="nump">$ 351<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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729944547440">
<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>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating cash flows from operating leases</a></td>
<td class="nump">$ 86<span></span>
</td>
<td class="nump">$ 161<span></span>
</td>
<td class="nump">$ 326<span></span>
</td>
<td class="nump">$ 421<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="Show.showAR( this, 'defref_efoi_RestructuredLeasesOperatingLeasePayments', window );">Operating cash flows from restructured leases</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">35<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Financing cash flows from finance leases</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 3<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Operating Lease, Payments</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123391704&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 https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729944118080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt - Credit Facilities (Details)<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="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Aug. 11, 2022</div></th>
<th class="th">
<div>Aug. 11, 2020 </div>
<div>USD ($) </div>
<div>creditFacility</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Apr. 20, 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="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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_DebtInstrumentNumberOfCreditFacilities', window );">Number of debt financing facilities | creditFacility</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="nump">$ 1,976,000<span></span>
</td>
<td class="nump">$ 2,169,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="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">$ 3,000,000<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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent', window );">Inventory costs</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent', window );">Inventory, net orderly liquidation value</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.75%<span></span>
</td>
<td class="nump">23.40%<span></span>
</td>
<td class="nump">22.40%<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="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent', window );">Monthly service 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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityMonthlyFacilityFee', window );">Minimum monthly fee</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityExpirationPeriod', window );">Line of credit term (in years)</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityTerminationNoticePeriod', window );">Termination notice period</a></td>
<td class="text">90 days<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityAnnualFacilityFee', window );">Annual facility fee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 70,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="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="nump">1,600,000<span></span>
</td>
<td class="nump">$ 1,200,000<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="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="nump">$ 64,000<span></span>
</td>
<td class="nump">$ 84,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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_DebtInstrumentBaseRateVariable', window );">Base rate, variable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.07%<span></span>
</td>
<td class="nump">0.21%<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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">$ 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.00%<span></span>
</td>
<td class="nump">9.40%<span></span>
</td>
<td class="nump">8.00%<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="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent', window );">Monthly service 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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityMonthlyFacilityFee', window );">Minimum monthly fee</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityExpirationPeriod', window );">Line of credit term (in years)</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</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="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityAnnualFacilityFee', window );">Annual facility fee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 25,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent', window );">Percent of accounts receivable used as borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="nump">6.00%<span></span>
</td>
<td class="nump">6.00%<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="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="nump">$ 400,000<span></span>
</td>
<td class="nump">$ 1,000,000<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="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="nump">$ 21,000<span></span>
</td>
<td class="nump">$ 24,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="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Receivables Facility | Wall Street Journal, Highest 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_DebtInstrumentBaseRateVariable', window );">Base rate, variable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.25%<span></span>
</td>
<td class="nump">3.25%<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_DebtInstrumentBaseRateVariable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Base Rate, Variable</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DebtInstrumentBaseRateVariable</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>dtr-types: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_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Interest Rate, Stated Percentage, Collateral Management Fee</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Number Of Credit Facilities</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_LineOfCreditFacilityAnnualFacilityFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line Of Credit Facility, Annual Facility Fee</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_LineOfCreditFacilityAnnualFacilityFee</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_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line of Credit Facility, Borrowing Capacity, Inventory Costs, Percent</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line of Credit Facility, Borrowing Capacity, Inventory Value, Percent</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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_LineOfCreditFacilityMonthlyFacilityFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line Of Credit Facility, Monthly Facility Fee</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line Of Credit Facility, Monthly Facility Fee, Percent</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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_LineOfCreditFacilityTerminationNoticePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line Of Credit Facility, Termination Notice Period</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_LineOfCreditFacilityTerminationNoticePeriod</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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_LineOfCreditFacilityExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126897435&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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_UnamortizedDebtIssuanceExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=efoi_WallStreetJournalHighestPrimeRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=efoi_WallStreetJournalHighestPrimeRateMember</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>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730024093088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt - Promissory Note Payable (Details) - 2022 Promissory Note - Director - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 16, 2022</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAmountsOfTransaction', window );">Amounts of transaction</a></td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent', window );">Total liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.5<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_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DueToRelatedPartiesCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of obligations due all related parties.</p></div>
<a href="javascript:void(0);" onclick="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(k)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(C))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: 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.17)<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: 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(3),(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DueToRelatedPartiesCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionAmountsOfTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of transactions with related party during the financial reporting period.</p></div>
<a href="javascript:void(0);" onclick="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 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39603-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAmountsOfTransaction</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionAxis=efoi_A2022PromissoryNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RelatedPartyTransactionAxis=efoi_A2022PromissoryNoteMember</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_RelatedPartyTransactionsByRelatedPartyAxis=srt_DirectorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RelatedPartyTransactionsByRelatedPartyAxis=srt_DirectorMember</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>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730016409920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt - Streeterville Notes (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">1 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Apr. 21, 2022 </div>
<div>USD ($) </div>
<div>creditFacility</div>
</th>
<th class="th">
<div>Apr. 27, 2021 </div>
<div>USD ($) </div>
<div>creditFacility</div>
</th>
<th class="th">
<div>Oct. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Apr. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Apr. 30, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 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="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>
<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Purchase price</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">$ 1,800<span></span>
</td>
<td class="nump">$ 1,500<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2022StreetervilleNoteMember', window );">2022 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount</a></td>
<td class="nump">$ 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="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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscount', window );">Issue discount</a></td>
<td class="nump">215<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Purchase price</a></td>
<td class="nump">1,800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsGross', window );">Unamortized debt issuance costs</a></td>
<td class="nump">$ 15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount', window );">Maximum redemption amount</a></td>
<td class="nump">$ 225<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals', window );">Right to defer mandatory redemption, number of deferrals | creditFacility</a></td>
<td class="nump">5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="text">&#160;<span></span>
</td>
<td class="nump">$ 1,900<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="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="text">&#160;<span></span>
</td>
<td class="nump">183<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="Show.showAR( this, 'defref_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange', window );">Percentage increase if delisted from Nasdaq</a></td>
<td class="nump">15.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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2022StreetervilleNoteMember', window );">2022 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="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>
<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="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="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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2022StreetervilleNoteMember', window );">2022 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_efoi_DebtInstrumentPrepaymentPremiumPercent', window );">Prepayment premium</a></td>
<td class="nump">7.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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2021StreetervilleNoteMember', window );">2021 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscount', window );">Issue discount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">194<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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>
<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="Show.showAR( this, 'defref_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount', window );">Maximum redemption amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals', window );">Right to defer mandatory redemption, number of deferrals | creditFacility</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption', window );">Percentage increase due to deferral of redemption option</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="text">&#160;<span></span>
</td>
<td class="nump">400<span></span>
</td>
<td class="nump">$ 1,700<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="text">&#160;<span></span>
</td>
<td class="nump">$ 61<span></span>
</td>
<td class="nump">$ 140<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="Show.showAR( this, 'defref_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange', window );">Percentage increase if delisted from Nasdaq</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15.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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2021StreetervilleNoteMember', window );">2021 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="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>
<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="Show.showAR( this, 'defref_efoi_DebtInstrumentPrepaymentPremiumPercent', window );">Prepayment premium</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_DebtPrepaymentMaximumPercentage', window );">Debt prepayment limit, percent</a></td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2021StreetervilleNoteMember', window );">2021 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_efoi_DebtInstrumentPrepaymentPremiumPercent', window );">Prepayment premium</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>
<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2021StreetervilleNoteMember', window );">2021 Streeterville Note | 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="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>
<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities', window );">Conversion of convertible securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 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>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Percentage Increase If Delisted From Security Exchange</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange</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>dtr-types: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_DebtInstrumentPrepaymentPremiumPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument Prepayment Premium Percent</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument Subject To Mandatory Redemption, Maximum Amount</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Prepayment Maximum, Percentage</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123466204&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 https://asc.fasb.org/extlink&amp;oid=126734703&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 https://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 https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429444&amp;loc=SL124452920-239629<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt discount.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=124435984&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 https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 2: 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 https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 3: 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 1D<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 5: 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 https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredFinanceCostsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentAxis=efoi_A2022StreetervilleNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_A2022StreetervilleNoteMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_A2021StreetervilleNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_A2021StreetervilleNoteMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>62
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730019271824">
<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="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 17, 2020</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_efoi_GainLossOnForgivenessOfDebt', window );">Gain on forgiveness of PPP loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 801<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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="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>
<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="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>
<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="Show.showAR( this, 'defref_efoi_GainLossOnForgivenessOfDebt', window );">Gain on forgiveness of PPP loan</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">$ 801<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_GainLossOnForgivenessOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain (Loss) On Forgiveness Of Debt</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_GainLossOnForgivenessOfDebt</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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromLoanOriginations1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>63
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730019274608">
<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>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 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="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="Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carry-forwards</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 9.6<span></span>
</td>
<td class="nump">$ 7.1<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration', window );">Operating loss, subject to expiration</a></td>
<td class="nump">$ 37.5<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="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, operating loss carry-forwards</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">125.4<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="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="text">&#160;<span></span>
</td>
<td class="nump">71.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="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="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="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, operating loss carry-forwards</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 77.2<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>64
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730016236752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - June 2022 and December 2021 Private Placement (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 16, 2021</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing 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">$ 18<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 334<span></span>
</td>
<td class="nump">$ 470<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="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="text">&#160;<span></span>
</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">229,414<span></span>
</td>
<td class="nump">310,860<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_June2022PrivatePlacementMember', window );">June 2022 Private Placement</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>
<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="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>
<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="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">1,313,462<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</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">$ 1.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.30<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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="nump">2,692,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,692,310<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 1.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.30<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="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">$ 252<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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">35<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">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>
<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="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="nump">334<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_EstimatedProceedsFromIssuanceOfWarrants', window );">Estimated proceeds from issuance of 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="nump">$ 3,500<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_June2022PrivatePlacementMember', window );">June 2022 Private Placement | Pre-Funded 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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="nump">1,378,848<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,378,848<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 0.0001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0001<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_June2022PrivatePlacementMember', window );">June 2022 Private Placement | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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="nump">2,692,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,692,310<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 1.30<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.30<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember', window );">December 2021 Private Placement</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>
<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="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>
<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="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="text">&#160;<span></span>
</td>
<td class="nump">1,193,185<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.52<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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="nump">1,278,413<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,278,413<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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.52<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.52<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="Show.showAR( this, 'defref_efoi_PaymentsForPlacementAgentCommissions', window );">Amount paid for placement agent commissions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 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>
<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="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="text">&#160;<span></span>
</td>
<td class="nump">42<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">97<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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">499<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,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="Show.showAR( this, 'defref_efoi_EstimatedProceedsFromIssuanceOfWarrants', window );">Estimated proceeds from issuance of 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="nump">$ 4,500<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember', window );">December 2021 Private Placement | Pre-Funded 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85,228<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (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="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="nump">85,228<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember', window );">December 2021 Private Placement | 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,278,413<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.52<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EstimatedProceedsFromIssuanceOfWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Estimated Proceeds From Issuance Of Warrants</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EstimatedProceedsFromIssuanceOfWarrants</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_PaymentsForClearingFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments For Clearing Fees</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments For Placement Agent Commissions</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 shares.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights</td>
</tr>
<tr>
<td style="padding-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_PaymentsOfStockIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SaleOfStockNumberOfSharesIssuedInTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_June2022PrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_June2022PrivatePlacementMember</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_ClassOfWarrantOrRightAxis=efoi_PreFundedWarrantsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ClassOfWarrantOrRightAxis=efoi_PreFundedWarrantsMember</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_ClassOfWarrantOrRightAxis=us-gaap_WarrantMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ClassOfWarrantOrRightAxis=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_SubsidiarySaleOfStockAxis=efoi_December2021PrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_December2021PrivatePlacementMember</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>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730016117472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - June 2021 Equity Offering (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="3">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing fees</a></td>
<td class="nump">$ 18<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 334<span></span>
</td>
<td class="nump">$ 470<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember', window );">Institutional investors</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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction', window );">Sale of common stock (in shares)</a></td>
<td class="nump">990,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</a></td>
<td class="nump">$ 5.05<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PaymentsForPlacementAgentCommissions', window );">Amount paid for placement agent commissions</a></td>
<td class="nump">$ 400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement', window );">Amount paid related to expenses for registered direct offering and concurrent private placement</a></td>
<td class="nump">51<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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">$ 469<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</a></td>
<td class="nump">$ 4,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_PaymentsForClearingFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments For Clearing Fees</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments For Placement Agent Commissions</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PaymentsOfStockIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SaleOfStockNumberOfSharesIssuedInTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730019070704">
<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="3">3 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>Jan. 16, 2020</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2021</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="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>
<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="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="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="nump">5,000,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="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (USD per share)</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">$ 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="Show.showAR( this, 'defref_efoi_PercentageOfSeriesAPreferredStockEligibleToVote', window );">Votes equal to the number of shares of common stock convertible</a></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>
<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="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>
<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="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>
<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="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="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="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="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember', 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Issuance of common stock upon conversion from preferred stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,721,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="Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember', 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Issuance of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">990,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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Issuance of common stock upon conversion from preferred stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">344,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="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>
<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="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>
<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="Show.showAR( this, 'defref_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock', window );">Net proceeds from the conversion of convertible debt to preferred stock</a></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>
<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleConversionPrice1', window );">Conversion rate (USD per share)</a></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>
<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Issuance of common stock (in shares)</a></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>
<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,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="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (USD per share)</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>
<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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Issuance of common stock upon conversion from preferred stock (in 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="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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Issuance of common stock upon conversion from preferred stock (in 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="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="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt | 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>
<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="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>
<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="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">184,851<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="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt | 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>
<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="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>
<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="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">159,354<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage Of Series A Preferred Stock Eligible To Vote</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_ConvertiblePreferredStockSharesIssuedUponConversion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br><br>Reference 4: 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 16<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=SL123496180-112644<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 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21506-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031898-161870<br><br>Reference 2: 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 1B<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: 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 1E<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<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 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_StatementEquityComponentsAxis=us-gaap_PreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_srt_CounterpartyNameAxis=efoi_FusionParkLLCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_FusionParkLLCMember</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_BrilliantStartEnterpriseIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_BrilliantStartEnterpriseIncMember</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>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729944173728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - June 2020 Equity Offering (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">1 Months Ended</th>
<th class="th" colspan="3">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Mar. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing fees</a></td>
<td class="nump">$ 18<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 334<span></span>
</td>
<td class="nump">$ 470<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="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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">229,414<span></span>
</td>
<td class="nump">310,860<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 527<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020InstitutionalInvestorMember', window );">January 2020 Institutional Investor</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="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="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>
<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.3700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (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>
<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="Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare', window );">Purchase price (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>
<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="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>
<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="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="Show.showAR( this, 'defref_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction', window );">Sale of common stock (in shares)</a></td>
<td class="nump">990,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</a></td>
<td class="nump">$ 5.05<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD 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>
<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="Show.showAR( this, 'defref_efoi_PaymentsForPlacementAgentCommissions', window );">Amount paid for placement agent commissions</a></td>
<td class="nump">$ 400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement', window );">Amount paid related to expenses for registered direct offering and concurrent private placement</a></td>
<td class="nump">51<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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="text">&#160;<span></span>
</td>
<td class="nump">$ 469<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="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</a></td>
<td class="nump">$ 4,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="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">187,734<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">269,180<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020EquityOfferingMember', window );">January 2020 Equity Offering</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="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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.67<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.59<span></span>
</td>
<td class="nump">$ 3.67<span></span>
</td>
<td class="nump">$ 3.59<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="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>
<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="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>
<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="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>
<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="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="text">&#160;<span></span>
</td>
<td class="nump">$ 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock and warrants</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>
<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="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">229,414<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">310,860<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="Show.showAR( this, 'defref_efoi_EstimatedProceedsFromIssuanceOfWarrants', window );">Estimated proceeds from issuance of 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>
<td class="nump">$ 800<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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised', window );">Issuance of common stock upon the exercise of warrants (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">0<span></span>
</td>
<td class="nump">156,446<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020EquityOfferingPrivatePlacementMember', window );">January 2020 Equity Offering, Private Placement</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="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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights', window );">Securities called by warrants (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48,185<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</a></td>
<td class="text">&#160;<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>
<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="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">41,680<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41,680<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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>dtr-types: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_EstimatedProceedsFromIssuanceOfWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Estimated Proceeds From Issuance Of Warrants</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EstimatedProceedsFromIssuanceOfWarrants</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_PaymentsForClearingFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments For Clearing Fees</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments For Placement Agent Commissions</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 shares.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights</td>
</tr>
<tr>
<td style="padding-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_PaymentsOfStockIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromWarrantExercises">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SaleOfStockNumberOfSharesIssuedInTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of non-option equity instruments exercised by participants.</p></div>
<a href="javascript:void(0);" onclick="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SubsidiarySaleOfStockAxis=efoi_January2020InstitutionalInvestorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020InstitutionalInvestorMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=efoi_January2020EquityOfferingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020EquityOfferingMember</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_January2020EquityOfferingPrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020EquityOfferingPrivatePlacementMember</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>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729947437344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Outstanding Warrants from the January 2020 Equity Offering (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">9 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Jan. 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="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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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">229,414<span></span>
</td>
<td class="nump">310,860<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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020EquityOfferingMember', window );">January 2020 Equity Offering</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="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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="nump">229,414<span></span>
</td>
<td class="nump">310,860<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</a></td>
<td class="nump">$ 3.67<span></span>
</td>
<td class="nump">$ 3.59<span></span>
</td>
<td class="nump">$ 3.67<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="nump">187,734<span></span>
</td>
<td class="nump">269,180<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</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">$ 5.05<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 3.37<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020InstitutionalInvestorMember', window );">January 2020 Institutional Investor</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="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (USD per share)</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">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="Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_January2020EquityOfferingPrivatePlacementMember', window );">January 2020 Equity Offering, Private Placement</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="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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="nump">41,680<span></span>
</td>
<td class="nump">41,680<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (USD per share)</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">$ 4.9940<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_SaleOfStockPricePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_January2020EquityOfferingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020EquityOfferingMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=efoi_January2020InstitutionalInvestorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020InstitutionalInvestorMember</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_January2020EquityOfferingPrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_January2020EquityOfferingPrivatePlacementMember</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>69
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730023321680">
<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>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 17<span></span>
</td>
<td class="nump">$ 39<span></span>
</td>
<td class="nump">$ 115<span></span>
</td>
<td class="nump">$ 387<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unearned stock-based compensation</a></td>
<td class="nump">200<span></span>
</td>
<td class="nump">300<span></span>
</td>
<td class="nump">$ 200<span></span>
</td>
<td class="nump">300<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Unearned compensation expected to be recognized, period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="nump">$ 2<span></span>
</td>
<td class="nump">7<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">4<span></span>
</td>
<td class="nump">2<span></span>
</td>
<td class="nump">16<span></span>
</td>
<td class="nump">10<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 13<span></span>
</td>
<td class="nump">$ 35<span></span>
</td>
<td class="nump">$ 97<span></span>
</td>
<td class="nump">$ 370<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>70
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729946908112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Estimates Utilized (Details) - Stock Option - $ / shares<br></strong></div></th>
<th class="th" colspan="2">9 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Fair value of options issued (in dollars per share)</a></td>
<td class="nump">$ 0.77<span></span>
</td>
<td class="nump">$ 4.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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice', window );">Exercise price (USD per share)</a></td>
<td class="nump">$ 0.95<span></span>
</td>
<td class="nump">$ 5.39<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected life of options (in years)</a></td>
<td class="text">6 years 1 month 6 days<span></span>
</td>
<td class="text">6 years 2 months 12 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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free interest rate</a></td>
<td class="nump">3.00%<span></span>
</td>
<td class="nump">0.80%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="nump">104.00%<span></span>
</td>
<td class="nump">96.50%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_EmployeeStockOptionMember</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>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730016046160">
<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">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2022 </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="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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at beginning of period (in shares) | shares</a></td>
<td class="nump">267,109<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted (in shares) | shares</a></td>
<td class="nump">226,820<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised (in shares) | shares</a></td>
<td class="num">(250)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Canceled/forfeited (in shares) | shares</a></td>
<td class="num">(135,447)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at end of period (in shares) | shares</a></td>
<td class="nump">358,064<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Vested and expected to vest at period end (in shares) | shares</a></td>
<td class="nump">291,379<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable at period end (in shares) | shares</a></td>
<td class="nump">118,920<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at beginning of period (USD per share) | $ / shares</a></td>
<td class="nump">$ 3.46<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted (USD per share) | $ / shares</a></td>
<td class="nump">0.95<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised (USD per share) | $ / shares</a></td>
<td class="nump">1.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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Canceled/forfeited (USD per share) | $ / shares</a></td>
<td class="nump">3.03<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at end of period (USD per share) | $ / shares</a></td>
<td class="nump">2.03<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice', window );">Vested and expected to vest at period end (USD per share) | $ / shares</a></td>
<td class="nump">2.21<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable at period end (USD per share) | $ / shares</a></td>
<td class="nump">$ 3.21<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding at end of period</a></td>
<td class="text">8 years 2 months 12 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="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Vested and expected to vest at period end</a></td>
<td class="text">7 years 10 months 24 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="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable at period end</a></td>
<td class="text">5 years 7 months 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<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 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<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 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&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 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://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 https://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 https://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 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-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>72
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730019384256">
<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">9 Months Ended</th>
</tr>
<tr><th class="th">
<div>Sep. 30, 2022 </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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding at end of period</a></td>
<td class="text">8 years 2 months 12 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="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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber', window );">Outstanding at beginning of period (in shares) | shares</a></td>
<td class="nump">2,400<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares) | shares</a></td>
<td class="nump">40,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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares) | shares</a></td>
<td class="num">(40,800)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber', window );">Outstanding at end of period (in shares) | shares</a></td>
<td class="nump">1,600<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Outstanding at beginning of period (USD per share) | $ / shares</a></td>
<td class="nump">$ 7.14<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (USD per share) | $ / shares</a></td>
<td class="nump">1.40<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (USD per share) | $ / shares</a></td>
<td class="nump">1.51<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Outstanding at end of period (USD per share) | $ / shares</a></td>
<td class="nump">$ 7.14<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding at end of period</a></td>
<td class="text">7 years 10 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<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 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -URI https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=128089324&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>73
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730021377952">
<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="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Outstanding purchase commitments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.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="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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_LongTermPurchaseCommitmentAmount', window );">Purchase commitment</a></td>
<td class="nump">$ 0.2<span></span>
</td>
<td class="nump">$ 0.8<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>74
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730038631040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Other Income (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="2">9 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Apr. 17, 2020</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Dec. 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="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>
<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="Show.showAR( this, 'defref_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct', window );">ERTC refund</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 431<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent', window );">ERTC expected receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 445<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 445<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 445<span></span>
</td>
<td class="nump">$ 445<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="Show.showAR( this, 'defref_efoi_GainLossOnForgivenessOfDebt', window );">Gain on forgiveness of PPP loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 801<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="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>
<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="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>
<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="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>
<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="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>
<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="Show.showAR( this, 'defref_efoi_GainLossOnForgivenessOfDebt', window );">Gain on forgiveness of PPP loan</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">$ 801<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_GainLossOnForgivenessOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gain (Loss) On Forgiveness Of Debt</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_GainLossOnForgivenessOfDebt</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_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payroll Tax Credit, Employee Retention Credit Under The CARES Act</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct</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_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payroll Tax Credit, Employee Retention Credit Under The CARES Act, Current</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent</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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types: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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromLoanOriginations1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>75
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139729944534864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related Party Transaction (Details) - Director - 2022 Promissory Note - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 17, 2023</div></th>
<th class="th"><div>Sep. 16, 2022</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAmountsOfTransaction', window );">Amounts of transaction</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionRate', 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent', window );">Total liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.5<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=srt_DirectorMember', window );">Scenario, Forecast</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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionRate', window );">Interest rate</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>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DueToRelatedPartiesCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of obligations due all related parties.</p></div>
<a href="javascript:void(0);" onclick="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(k)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(C))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: 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.17)<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: 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(3),(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DueToRelatedPartiesCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionAmountsOfTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of transactions with related party during the financial reporting period.</p></div>
<a href="javascript:void(0);" onclick="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 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39603-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAmountsOfTransaction</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionLineItems</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Identify the stated interest rate per the agreement, for example, leasing and debt arrangements between related parties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_RelatedPartyTransactionsByRelatedPartyAxis=srt_DirectorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RelatedPartyTransactionsByRelatedPartyAxis=srt_DirectorMember</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_RelatedPartyTransactionAxis=efoi_A2022PromissoryNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RelatedPartyTransactionAxis=efoi_A2022PromissoryNoteMember</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_StatementScenarioAxis=srt_ScenarioForecastMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>76
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/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.22.2.2</span><table class="report" border="0" cellspacing="2" id="idm139730016368944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events (Details) - USD ($)<br> $ in Thousands</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"></th>
<th class="th" colspan="4">1 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Nov. 09, 2022</div></th>
<th class="th"><div>Nov. 04, 2022</div></th>
<th class="th"><div>Oct. 10, 2022</div></th>
<th class="th"><div>Apr. 27, 2021</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
<th class="th"><div>Sep. 30, 2022</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
<th class="th"><div>Apr. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Proceeds from issuance of 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="nump">$ 1,800<span></span>
</td>
<td class="nump">$ 1,500<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_A2021StreetervilleNoteMember', window );">2021 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Proceeds from issuance of 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="nump">$ 1,500<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount</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">1,700<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount', window );">Maximum redemption amount</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">$ 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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=srt_DirectorMember', window );">Director</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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Proceeds from issuance of 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="nump">$ 450<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="Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | October Partitioned 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 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="Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | 2021 Streeterville Note | Partitioned Note | Exchange 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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Issuance of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">385,918<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Director</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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAmountsOfTransaction', window );">Amounts of transaction</a></td>
<td class="nump">$ 350<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Huang Note | Director</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>
<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="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>
<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionAmountsOfTransaction', window );">Amounts of transaction</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 250<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Proceeds from issuance of 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="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_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument Subject To Mandatory Redemption, Maximum Amount</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<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 2<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28551-108399<br><br>Reference 3: 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 https://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429444&amp;loc=SL124452920-239629<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromIssuanceOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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 https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RelatedPartyTransactionAmountsOfTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of transactions with related party during the financial reporting period.</p></div>
<a href="javascript:void(0);" onclick="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 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39603-107864<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionAmountsOfTransaction</td>
</tr>
<tr>
<td style="padding-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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="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 https://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 https://asc.fasb.org/extlink&amp;oid=126973232&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 https://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 https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentAxis=efoi_A2021StreetervilleNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_A2021StreetervilleNoteMember</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_RelatedPartyTransactionsByRelatedPartyAxis=srt_DirectorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RelatedPartyTransactionsByRelatedPartyAxis=srt_DirectorMember</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_DebtInstrumentAxis=efoi_OctoberPartitionedNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_OctoberPartitionedNoteMember</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_efoi_PromissoryNoteAxis=efoi_PartitionedNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PromissoryNoteAxis=efoi_PartitionedNoteMember</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_TypeOfArrangementAxis=efoi_ExchangeAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_TypeOfArrangementAxis=efoi_ExchangeAgreementMember</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_RelatedPartyTransactionAxis=efoi_HuangNoteMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RelatedPartyTransactionAxis=efoi_HuangNoteMember</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>77
<FILENAME>efoi-20220930_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/2022"
  xmlns:efoi="http://www.energyfocusinc.com/20220930"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2022"
  xmlns:us-gaap="http://fasb.org/us-gaap/2022"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="efoi-20220930.xsd" xlink:type="simple"/>
    <context id="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i11265eef4aad46d794d22dea392c6203_I20221107">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2022-11-07</instant>
        </period>
    </context>
    <context id="iaba68d5a70d14ff5a89c129277c344a3_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="iccb5853c99c2404bb5efc9cb815cab83_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3d38772d0d82451f9709b001f8b523db_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i955e67119eab4fb9a16c2e4056e33b77_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i7987942e09e2471ba2865ed8c06221f0_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i72e0031688394ae5a40114993adad6a7_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i45acacd8e3644f8e9ed598ea4ea01d04_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i3ad53c06ea0c4f26a6658e9579659547_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i8fa2c8c1cb0e4075b272d7cf5ab91a6b_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i2f420c0ba76a4b158cc9e9783809ad32_D20220101-20220331">
        <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>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i328f4bb2ed174e6ea382ce91e1950744_D20220101-20220331">
        <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>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ic42811ba035e48908dd8c1fba25ebace_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i36d609f995bd456d8c811559e575f5a2_D20220101-20220331">
        <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>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ia002702261534e99a86b51805aa35694_I20220331">
        <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>2022-03-31</instant>
        </period>
    </context>
    <context id="i16c1aa523b6d44b38703ff85f1de1a85_I20220331">
        <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>2022-03-31</instant>
        </period>
    </context>
    <context id="ib4bc8cffa3b540cfa510dca926048535_I20220331">
        <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>2022-03-31</instant>
        </period>
    </context>
    <context id="i1f6ce61750d94268a9797ab11937a018_I20220331">
        <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>2022-03-31</instant>
        </period>
    </context>
    <context id="i41317a18bbe7441eba3cd26f18efe456_I20220331">
        <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>2022-03-31</instant>
        </period>
    </context>
    <context id="i80309221754f4f1fbd7ebe9b2bd1fd4c_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i27f43545072145d8b67c44614d856844_D20220401-20220630">
        <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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630">
        <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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="i26993206f60147df9c3afee6f7e56990_D20220401-20220630">
        <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>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="ib27fac473a954075a698cab0d8c7a4b0_I20220630">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="icf5e7ab6b92f42ccafe6eacbe095e3d5_I20220630">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="ie83b6cce937a4ea5b744c29249335c2a_I20220630">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="i151a406e716441da886a4ff8caabb71e_I20220630">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="ia7ff53291113483ba29d1d932d8513aa_I20220630">
        <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>2022-06-30</instant>
        </period>
    </context>
    <context id="i682c94a884c54808853513b639aaddba_I20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="icc215aa7d53b4bc48a392c6a41f72521_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i5c3eab43eaee4a109a5db8730847787f_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ie1eda9d3bbbd441993d7ab74ea4b0f71_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i54814654e2da4cd18301f0c1fcd4ebf3_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="if9335ddc4af449ddbe8158ac552d0a1e_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i680fcb3afcbe42a9ac1a36186c12588a_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i7a9e0e9059fb4fe3b9ee14d9782d254d_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i87ee04552afd4559b4e08cd2646c428c_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="id2a97eb146344d1f80c8b08ffc710bfe_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="i7c1032415f4d4c3788fe4265579e52c3_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="i470facc83bc144549bda99f38a36a4c3_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="i213d4b0a10204929b6931781d2291628_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="i5acde0ce46da4dcfaecef72e955e0963_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="i665a74c29f70404086fd8174e737d9ae_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i2e5cb75f952146cfafd3f50cee3d0f62_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="i86764f26015b4a8b83676c1940ed78e4_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="i26bb66f827304d46a3935f73d2dc6dfd_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="i21d7e292c62e483aba098b2a517bab34_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="i22a33ab9df0045418c5db95d468e7c75_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="i585a56b922c640ce89652fbdf6d902a0_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="if59253d3904443d19142f72b9cfbd593_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="i54c20001f98e4b7088878f0e4434111f_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="ie694b4b7a1f2408b93d96398305e67dc_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="i2a52ce3f141b427ab0691b45fb7f1ee9_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i6914353c61624cbb8977a9af61eb9588_D20210401-20210630">
        <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-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630">
        <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-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="ia7b2dd69ecbb455c812af98f55862fce_D20210401-20210630">
        <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>
            <startDate>2021-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="i00b0d086d3ab49c8a683d8954cf4fef5_D20210401-20210630">
        <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-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="ic428e490269a445cbf67999688fa8a64_I20210630">
        <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-06-30</instant>
        </period>
    </context>
    <context id="i955d48b41786498d99765ea89cb30e42_I20210630">
        <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-06-30</instant>
        </period>
    </context>
    <context id="i83dae07318134e1cba6b3cebed12e101_I20210630">
        <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-06-30</instant>
        </period>
    </context>
    <context id="i916bec6489234285bc4faba48c47531d_I20210630">
        <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-06-30</instant>
        </period>
    </context>
    <context id="iddc2642da66c4728b01d64e14a2f60e1_I20210630">
        <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-06-30</instant>
        </period>
    </context>
    <context id="i5be37111720b4e3db2683efa15ba1627_I20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="iab8b96e992724c5f947eff170136e04b_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ib0b46a49c3e9483f895f7fb43af1d2ae_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ide7c515d7b5c49778860043e22c26b9e_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i37c5bc61bc3847df8ee41d36acdd3f6b_I20210930">
        <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-09-30</instant>
        </period>
    </context>
    <context id="i17b7e1a0f0bd4e0895f819e366d44764_I20210930">
        <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-09-30</instant>
        </period>
    </context>
    <context id="ibc54bb183c774a3380ffa16006ed5181_I20210930">
        <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-09-30</instant>
        </period>
    </context>
    <context id="i114dc05fb5c64306936cb8d143be1e55_I20210930">
        <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-09-30</instant>
        </period>
    </context>
    <context id="i8f44bbd95f6f46c08323693a8d071dfe_I20210930">
        <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-09-30</instant>
        </period>
    </context>
    <context id="i0c342207ebd74923bd8a639b59b00f4f_I20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2021-09-30</instant>
        </period>
    </context>
    <context id="i18c689fb0f414e3eb031cde5879f5268_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i91e93d00b627463cba94c43dd3d1a008_D20210701-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i8a79c33feff848359dd54eec991a97f6_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="id9521dddca564db0a623980c42c97b0e_D20210101-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ic61ce08aeede4ac7beee549cbfb8591a_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i176368470a454b5aaa77dcbae6ab3f2d_D20210701-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ib76b892bcc8a44c098293a01fa41865f_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i75cceb313bf04e6b998e12638d958d7f_D20210101-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i37f4c9acc3e84d8589b8090148a76c4b_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i6d1f5375b6c449b683d6f36eef2b9818_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i5800fccfc6b34922ac202430d4a66a4a_D20210701-20210930">
        <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:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="if37ada2510094a07a155169b18c4fc52_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ie3a7432bc77b4b52ba3fc4e82f9e6617_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ib42f96b7a9ef42958902850aa8da2a07_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i8fbc883572984a8db2394a7424b018ce_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i12126535a0fc4e958a3056dc027bb8e7_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:CommercialBuildingSystemsProviderMember</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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="idf78687acd0a453da6d6a1491a0d86fe_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i7d5bd3f5b1044e9eb88a46e2b6f10b52_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="i59b4afaff0e54a2aa40df1997cfefdba_D20210101-20210930">
        <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:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i153fde08482f49c5805c0eac12afbc2a_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="i46ace4c4778e4e2c98558315008887d0_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="i607a49302ca54560b819864785669346_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i82f9247d41564f12b19716497b0e894b_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:CommercialBuildingSystemsProviderMember</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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ic32feaaefe8f4d1ca318e81d1b95a5ad_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:USNavyMechanicalContractorMember</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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i64dfeecdee55408ba8766b6f20b3409c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSDepartmentOfDefenseMember</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-12-31</endDate>
        </period>
    </context>
    <context id="i896af6da142744728609e22fd51555e1_D20210701-20210930">
        <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>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i4d7fb0d31bca438baa1a780ce7f8a55f_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">efoi:TotalExpendituresMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i4f7a65ca10534d1bacbb2510731f2218_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">efoi:TotalExpendituresMember</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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i40025df90bd74afeb2e9c863a024524b_D20210701-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">efoi:TotalExpendituresMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i29deb08bfce44cdb8d52f6ec6180beb6_D20210101-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">efoi:TotalExpendituresMember</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-09-30</endDate>
        </period>
    </context>
    <context id="icb9710d710d94438aaa44c0d3eeea12b_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i98875a9fd97e463b943e870204e8a130_D20210101-20211231">
        <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-12-31</endDate>
        </period>
    </context>
    <context id="ib6c4d1b96db94b7e96e122931182a3d1_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ie5bbb9452ad74f3686293bff9ccff1ef_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i5c999f042b6d45b98aae39612a0c2f6a_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="if8d831283e96493096d152b5734ddaad_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="ifbbc8e2db54146eb8f8964e46e5cb19c_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i46a150e0d07a49bf9a0c27bb0e38ed1a_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i053f5844d2cb4947b57d374b1c41e110_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i0eefc069d9d842f6a9222615d705a3d4_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="i4068fc9bca6746ad9993ef75d567d291_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i2f5f0d28ce19493dbd2e4fa1e79d641c_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i7d95b9eb53cd427c85ff41ec3ef9c73b_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="icbf888d313d64174882c185ba203e2b2_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i1abbb7b455da4f6ea40a3c72ba069b13_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i549805fad92b42eca5ce18f05b2411ec_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i94743c8c339a4a698bd9f322be49c248_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i12f89771e5024f029d3dc49537f86a70_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i8f74a9e581e94e3db1059280cbfe8c07_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ib89d3b33574f4f60bbf58f4f5aa84bf3_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="i15c650a4eaa14a1fa20d6d3d662b41b9_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="idc8b649a3ca24d27aa950369a45b0f50_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="i2a8600f826034451907b4cfda63c037d_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMLEDProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ie595f06efc5045a7bf3459e93a5888bd_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i9d2ec8f43f314ebcae8cfdecdf9fde7d_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i0ef25f5a819d48a08bda5c3f3fbb956b_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMLEDProductsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-06-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="ib6093e256b84497da804afffdc20ab61_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i39cef58f6ce245ceb3e58ca2aa026921_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">efoi:PreFundedWarrantsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="icbe2c1b605284d9ea336fc4b0c5b94b6_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:June2022PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9ce48cbac2a74e9d94e19ade81ea2ba2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i8ddadf8727d94cc6b7723121484c1cd6_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">efoi:PreFundedWarrantsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i748bb2380fea4959930dec8b4d178b77_D20211216-20211216">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ClassOfWarrantOrRightAxis">efoi:PreFundedWarrantsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-12-16</startDate>
            <endDate>2021-12-16</endDate>
        </period>
    </context>
    <context id="i767ac6894c76456c8094aa95c522cc82_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i81f0616158c84d3fb1b6440205bf4b1f_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:December2021PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630">
        <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-06-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="i0faf6b8b75e64d60b8cca4f20ea1033d_I20210630">
        <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-06-30</instant>
        </period>
    </context>
    <context id="ie0406c176cd64530aa241398cd71c792_D20210601-20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2021-06-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="i12d643b8880e4367bc65f29dd3283f8b_D20220101-20220331">
        <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>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020InstitutionalInvestorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="i75c44893e522482d9da770d544c0738f_I20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020InstitutionalInvestorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="if6df7ef067004660ab3ca010df7407c3_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="ieaa31e67c19d4a1abf7787241d1751d0_I20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingPrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="i11a6b7ac29a64570a16688c65c0b2098_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="ife2256486c774b86ada936065734d99d_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i7c5ac06956994272be453a5b5ee648f3_I20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-09-30</instant>
        </period>
    </context>
    <context id="i06883d1c8c934bbb8b0580de82e8da76_D20210101-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ia1df6a9ccabb4f79b31bd886a2658fa8_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i9fd2512855984eebaa00786549fbb063_D20210101-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i68d6701437424d0099a8bc50df3a69c3_I20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-09-30</instant>
        </period>
    </context>
    <context id="if962f91bd3a94df6aae226599884db1d_D20220901-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:A2022PromissoryNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-09-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i7bb635b2936646fd95b0eba62bd3b2a0_D20220401-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="ib742238870fe478a8e2dec1d4e5d846d_D20210401-20210430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-04-30</endDate>
        </period>
    </context>
    <context id="i8d5a9099f5794e149564f34403f84182_I20220823">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2022-08-23</instant>
        </period>
    </context>
    <context id="ic7790ed3f19d47b4b19ed5db52c91404_I20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-06-30</instant>
        </period>
    </context>
    <context id="i4205067b75474f23a9af870a7acc0c11_D20201201-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2020-12-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i659a22b1f88d43dd8304aab21de18fde_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i60ee0e8736cc496c846b2201240c84a6_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i1238089d6da54d3c8539d51de8626cda_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i9a7128568ce2469894023f4f6893b7bf_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i24ce2512c7d24aa699d52a6a11351c14_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i830a5fc1ff324ae2a118bd1054516a3c_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i86dcc6fe9135449ba9d46e0677d6b66a_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i6b8e752b884f4eb08571d66b9b0dcd17_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="ie0b83f3b603e49478cb9610d3da391dc_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i7a590b8ad79c4667af1d3cd26ffcb56d_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i7c439466ba374205986fa7cb14be2a0b_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="ia5562b5bdb584c64835b3f2bb0e9439f_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i3e344b971b5a476691993700b1257fbd_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i9612b013077d42318d0d5227ee973c48_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="iabd9dc0011de493fa7d5694fec513177_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ibbf4fde323d2407c8d23f7b6e5b0b288_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="ib04900d5da684b8290217bf5396c4518_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="ib51bc3cbc26c483088e0902b28039501_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i90c363b72c2c474fbafe16c0ed016d62_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i19afb847ee1b409e8afdd00bb3187db3_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:UltravioletCLightDisinfectionRobotsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i6b68b29bf54b4763a478d9538bdbded1_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:UltravioletCLightDisinfectionRobotsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="ib7f854dbc9e847d7982f8d9eda2357cd_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:UltravioletCLightDisinfectionRobotsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="icc913f9acb27416c8be4ca7f04596c4d_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i791e06876671458fb0b76c5c1ec3b640_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="id8164c90a0cc4543850c20165375ea5f_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:UltravioletCLightDisinfectionRobotsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i3ac220694ef94d599b5c4bcd6bc2f797_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:RealEstateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i9446277efb414c7394ebb1b0c8aebd3d_I20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="i18ff291df7b8496cb9875868c6794628_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="ica765d7e1dd64880aa3b5af97188883b_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>
            </segment>
        </entity>
        <period>
            <instant>2021-04-20</instant>
        </period>
    </context>
    <context id="if71eac1a49294bdc9b5803cead4065ae_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="i3c82664ebcef4ec8bf8b99764b232564_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="ic8af432b0fc54d44a9d407badbc5a3cd_I20211231">
        <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>2021-12-31</instant>
        </period>
    </context>
    <context id="i10b7d00133c949799bb2b40563bb4c8f_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="i971c9edf22194ca1a8067ef5d3d289ff_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i0ecf8623aa0841ef9793311037e6ac63_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i0a615a216f2a4c009ef7875759edf4c6_D20220811-20220811">
        <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>2022-08-11</startDate>
            <endDate>2022-08-11</endDate>
        </period>
    </context>
    <context id="ie762edb4f9d24e66a3ffb1b02b4080e5_D20220901-20220930">
        <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>2022-09-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i196ba82f2e6240a8b6c413dfcc04dd31_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="id3d5f742cace4efb8dfae66add4b2ac1_I20220930">
        <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">efoi:WallStreetJournalHighestPrimeRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="ibb51bc029bfa4e51af056061a860e167_I20211231">
        <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">efoi:WallStreetJournalHighestPrimeRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i905894c4d5bc4eda86e1b7978f996e3f_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="i53563dc83c6742ab84eaea9a54e206f0_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="i23f3a31d94194ab0b7d658e82442a131_D20220811-20220811">
        <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>2022-08-11</startDate>
            <endDate>2022-08-11</endDate>
        </period>
    </context>
    <context id="ic3a263d6a4e54941b0cae626cdaf3842_D20220901-20220930">
        <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>2022-09-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:A2022PromissoryNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-09-16</startDate>
            <endDate>2022-09-16</endDate>
        </period>
    </context>
    <context id="ie76c4408e5e7447794eacfc4da73a57d_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:A2022PromissoryNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="if6e668f6124e450d84a74981dedfb0ee_I20220421">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-04-21</instant>
        </period>
    </context>
    <context id="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-21</startDate>
            <endDate>2022-04-21</endDate>
        </period>
    </context>
    <context id="i389bf4726fa24bae9f309a337b67ce6e_D20220421-20220421">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-21</startDate>
            <endDate>2022-04-21</endDate>
        </period>
    </context>
    <context id="i2d71d179ac9d45ee8f2360098e53dba3_D20220421-20220421">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-21</startDate>
            <endDate>2022-04-21</endDate>
        </period>
    </context>
    <context id="i414b414730cb486699f40f17b197d20f_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2022StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i8e1fec4673e546bba94f07db1122b8a2_I20210427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-04-27</instant>
        </period>
    </context>
    <context id="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-27</startDate>
            <endDate>2021-04-27</endDate>
        </period>
    </context>
    <context id="i2e938b483e9c44d8a2997c541f085160_D20210427-20210427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-27</startDate>
            <endDate>2021-04-27</endDate>
        </period>
    </context>
    <context id="i86c7dafd35b7400bae6e5f62e5db0929_D20210427-20210427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-27</startDate>
            <endDate>2021-04-27</endDate>
        </period>
    </context>
    <context id="i498ed019b5194c86b2cc36ba153b0b61_D20221001-20221031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="i81c56b06f30049639c85bc9c0500b505_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="if84f49ab63ca4d8ab1bcf8d266e47b60_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i66532045d3ec4a78a77591cbe026cc94_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="i93d30f8a964643aab7ca91a6bfd8ee01_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="iea8d7ac65a5c4beabc4e0669316eaf21_D20210101-20210930">
        <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>2021-01-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i617257e7faeb4beca533ed983b2f58d4_I20211231">
        <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>2021-12-31</instant>
        </period>
    </context>
    <context id="i0323c9f2e709499388c55edfd47a2d07_I20211231">
        <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>2021-12-31</instant>
        </period>
    </context>
    <context id="if941b58136404dd4b535ca1bc12bedb8_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="i7343d6d5c7c048638231d8662dbd503d_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="iefd5eddb0814490fbd704f2c74f89146_D20210101-20210331">
        <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>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i7219bd37e0e6448194c0a85983fa741e_D20210101-20210331">
        <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>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i89f85dc38f7d456ba4d0a27b9e8c44d5_D20220101-20220331">
        <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>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ib271d367f3b04cd99dca3bb663f64887_D20220101-20220331">
        <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>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="iceb133a95ec34a90beb603793c0c1a16_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">efoi:FusionParkLLCMember</xbrldi:explicitMember>
                <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>2021-12-31</instant>
        </period>
    </context>
    <context id="i09164e6fe4e24b1aad0d2a0cb0b3971e_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">efoi:BrilliantStartEnterpriseIncMember</xbrldi:explicitMember>
                <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>2021-12-31</instant>
        </period>
    </context>
    <context id="i3a1985fdb73c40eab7774a091c39b414_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="i0f75433f2ab04afc9e0f49ca98b865a5_I20200115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-01-15</instant>
        </period>
    </context>
    <context id="i8db87dbfef0c4d6285dee961db52fe03_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="i91458235d2144bf784b39565efa69ba2_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="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="ib0bd1c8c0ccc4c3c9f0db9404c231979_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i4a27914cc205482c8bd58c311de25f66_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ia8c1cf4af256477a9f3312f157d59e00_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i7b877e19c76246d8bd05cd62af67b8a9_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i442abdaea1d04ae9bdd98e8d7dece558_D20220701-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingPrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i39bebab66ddb43608243763645f6ca3d_D20210701-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingPrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ic8492b48531b4b3cabdd6d3da9335a79_D20210701-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:January2020EquityOfferingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ia5a502486aba455ebed2e3223c3362a0_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i23d7b0e9696d4a529a7dcd257570a4fb_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="ideff6cde4d7b407386a6407f451b309d_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="id89dc8d72db14b00ac47698037f60b6f_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="i3b21fc5eda514b8badcc6afdeebf4f09_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ib6ec7d497d754f3499b69d7e7f71ba80_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="idf9b91958ac74d2ba2d17c5d5094693f_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="if76c9109bee6465395764fb4affa8ad3_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="ibac8b1f026a84b7b9acd8bc716fb5ba6_D20220701-20220930">
        <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>2022-07-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i38d603fde1ae40219a02697631cdc470_D20210701-20210930">
        <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-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="id5d44e14724b473083ad6434de1ccffc_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ia7aa25b3113e426998f8d7cacbbbd50c_D20210101-20210930">
        <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-09-30</endDate>
        </period>
    </context>
    <context id="i3907598e54964033bfdff8d85a946082_D20220101-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="i1b2deadd99aa4fffa0a17c415fc8f198_I20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-09-30</instant>
        </period>
    </context>
    <context id="i6903be08e4a8455297987e3aa2b285cf_I20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-09-30</instant>
        </period>
    </context>
    <context id="ie4c9f0482b664da7bec8b76bf482f1c1_I20211231">
        <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-12-31</instant>
        </period>
    </context>
    <context id="ia3b35a926924443c945b946003d4ba41_D20220101-20220930">
        <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>2022-01-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="ib3fb6995edf04fadb00176f749207754_I20220930">
        <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>2022-09-30</instant>
        </period>
    </context>
    <context id="i1ecd922e83a84d32bd6d77bac81fe2ae_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="id958e8a3a7f94c5db78db2d7543b0efa_D20221001-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="ia031c454919a4e79b6e09138bcf7cda2_D20231001-20231231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-10-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="i2eabe6d2a37a422989c84893dd332210_D20230617-20230617">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:A2022PromissoryNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-17</startDate>
            <endDate>2023-06-17</endDate>
        </period>
    </context>
    <context id="ia7a575e13a97477c95fcce5d364e94f4_D20221109-20221109">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-09</startDate>
            <endDate>2022-11-09</endDate>
        </period>
    </context>
    <context id="i0f027af04d83467b80f12eee9555de10_D20220901-20220930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-09-01</startDate>
            <endDate>2022-09-30</endDate>
        </period>
    </context>
    <context id="icba1b582d7184316b754105405aecfd3_D20221104-20221104">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:HuangNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-04</startDate>
            <endDate>2022-11-04</endDate>
        </period>
    </context>
    <context id="ic107134d856e4cd68956b82d3af98975_D20221001-20221031">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">efoi:HuangNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="ibf6599b235b243f6904e6a6ea6d49bc9_I20221010">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:OctoberPartitionedNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-10</instant>
        </period>
    </context>
    <context id="ic18b07c002bb481c99be9c8a3e22ef20_D20221010-20221010">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:A2021StreetervilleNoteMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TypeOfArrangementAxis">efoi:ExchangeAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="efoi:PromissoryNoteAxis">efoi:PartitionedNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-10</startDate>
            <endDate>2022-10-10</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="d">
        <measure>utr:D</measure>
    </unit>
    <unit id="creditfacility">
        <measure>efoi:creditFacility</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl80LTEtMS0xLTc2OTEw_6c314e14-bf6b-4dd5-aed5-94f8fbfd1922">0000924168</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl81LTEtMS0xLTc2OTEw_ff2b0f28-230c-4541-9da1-0cb7f6941e5c">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl8xMy0xLTEtMS03NjkxMA_b4a24818-8f3a-4f9a-9132-8f54bd501091">2022</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl8xNC0xLTEtMS03NjkxMA_79d87f55-8f2d-4159-bc01-a507547fa0dd">Q3</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGFibGU6NjcxYjk2NDQ1ZDZjNDMzOGFiZDBjOTVjY2RlYWViYTYvdGFibGVyYW5nZTo2NzFiOTY0NDVkNmM0MzM4YWJkMGM5NWNjZGVhZWJhNl8xNS0xLTEtMS03NjkxMA_718b0e4c-79d3-4079-b768-6ccf0362675f">false</dei:AmendmentFlag>
    <dei:EntityRegistrantName
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180L2ZyYWc6NmZhODBkYzg2MzNhNDcyYmIxMjM2NWVmMGU5ZGM4ZTEvdGV4dHJlZ2lvbjo2ZmE4MGRjODYzM2E0NzJiYjEyMzY1ZWYwZTlkYzhlMV8zMQ_554643f2-15cc-494e-bf21-65d731d36985">ENERGY FOCUS, INC/DE</dei:EntityRegistrantName>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i2a8600f826034451907b4cfda63c037d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_3aa032ef-d1be-49b9-9d46-a1940c7bf3fc">P5Y</efoi:StandardProductWarrantyNumberofYears>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="ie595f06efc5045a7bf3459e93a5888bd_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_c24d493e-2d1f-4b2e-a4a3-7b64303ed106">P5Y</efoi:StandardProductWarrantyNumberofYears>
    <us-gaap:StockholdersEquityNoteStockSplitConversionRatio1
      contextRef="i1ecd922e83a84d32bd6d77bac81fe2ae_D20200611-20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182Ny9mcmFnOmI5MzA0ZmYwYWMyZjQ2YTY5M2UwYTdiZTljZDE2YjRmL3RleHRyZWdpb246YjkzMDRmZjBhYzJmNDZhNjkzZTBhN2JlOWNkMTZiNGZfMTk1_05d6277d-561f-4a9b-9951-1b5c7cba203f"
      unitRef="number">0.2</us-gaap:StockholdersEquityNoteStockSplitConversionRatio1>
    <dei:DocumentType
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODUx_12f0442f-a431-4eae-9f69-1ef8d76dbb4e">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NmI0ODUwMzY0N2Y3NGZhYTlkYWRlMzlmZWQ0MDVjYTkvdGFibGVyYW5nZTo2YjQ4NTAzNjQ3Zjc0ZmFhOWRhZGUzOWZlZDQwNWNhOV8wLTAtMS0xLTc2OTEw_0f5a1d9a-3593-424c-bc8b-7a3020114609">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xMjI_2480e857-9b82-435d-80d9-16761e13f0cd">2022-09-30</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NDM2NzE1NmNkNWVjNDMxODgyZTU0YmZjMDdhMTY5M2YvdGFibGVyYW5nZTo0MzY3MTU2Y2Q1ZWM0MzE4ODJlNTRiZmMwN2ExNjkzZl8wLTAtMS0xLTc2OTEw_e6a53165-0048-4b70-83d0-d4dbdf55877f">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODUy_2e78d6c1-40bb-4776-abe7-ee2994d3b82f">001-36583</dei:EntityFileNumber>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8wLTAtMS0xLTc2OTEw_404fc9db-19d3-4bc2-a85a-afd31f76acd4">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8wLTItMS0xLTc2OTEw_d8c1312c-5c55-4055-abf1-8e88580ba56a">94-3021850</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8zLTAtMS0xLTc2OTEwL3RleHRyZWdpb246NGRhOTgyM2Q2ZGY5NDdiZWFjNDA5NWFkMzQzZGQyNTdfNA_c92c5c8d-d9a7-421a-ad4c-097be0a224de">32000&#160;Aurora&#160;Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8zLTAtMS0xLTc2OTEwL3RleHRyZWdpb246NGRhOTgyM2Q2ZGY5NDdiZWFjNDA5NWFkMzQzZGQyNTdfOA_f0eb6c44-0d0d-4fb2-acd7-6747b6170acc">Suite B</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8zLTAtMS0xLTc2OTEwL3RleHRyZWdpb246NGRhOTgyM2Q2ZGY5NDdiZWFjNDA5NWFkMzQzZGQyNTdfMTE_f4a29655-e995-40bb-9007-35855db270f8">Solon</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV8zLTAtMS0xLTc2OTEwL3RleHRyZWdpb246NGRhOTgyM2Q2ZGY5NDdiZWFjNDA5NWFkMzQzZGQyNTdfMTU_7f39a3c8-9ac0-492f-a7a1-e1a9833343bb">OH</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV82LTAtMS0xLTc2OTEw_10199175-aa13-4d54-8da8-f119b7712c96">44139</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV84LTAtMS0xLTc2OTEwL3RleHRyZWdpb246NTA1M2YxMGNhY2FmNGNjZjg3MzRkZTMwZDRiOGQ3ZjlfNTg_5a4c834f-0298-4b96-a0a8-3ca76b434434">(440)</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MWNmZDIwYjdjZWYyNGMzZGI4YTRlYTBkMDNlYjc3MTUvdGFibGVyYW5nZToxY2ZkMjBiN2NlZjI0YzNkYjhhNGVhMGQwM2ViNzcxNV84LTAtMS0xLTc2OTEwL3RleHRyZWdpb246NTA1M2YxMGNhY2FmNGNjZjg3MzRkZTMwZDRiOGQ3ZjlfNjE_68af6cad-df4c-4d5b-b161-13f9c179ddb2">715-1300</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NGQxN2VkODBhY2MxNDA2NWI2YTE3NzFlZmY0N2NjMmEvdGFibGVyYW5nZTo0ZDE3ZWQ4MGFjYzE0MDY1YjZhMTc3MWVmZjQ3Y2MyYV8xLTAtMS0xLTc2OTEw_f8a36469-56b2-4d00-a007-fde9ec50aebb">Common Stock, par value $0.0001 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NGQxN2VkODBhY2MxNDA2NWI2YTE3NzFlZmY0N2NjMmEvdGFibGVyYW5nZTo0ZDE3ZWQ4MGFjYzE0MDY1YjZhMTc3MWVmZjQ3Y2MyYV8xLTEtMS0xLTc2OTEw_ba8749e9-acc8-49b9-ae74-6d95653df0b3">EFOI</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6NGQxN2VkODBhY2MxNDA2NWI2YTE3NzFlZmY0N2NjMmEvdGFibGVyYW5nZTo0ZDE3ZWQ4MGFjYzE0MDY1YjZhMTc3MWVmZjQ3Y2MyYV8xLTItMS0xLTc2OTEw_8dd1d037-f91a-4e05-84d4-9cf45fabbcba">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODQ4_cb9bc37a-01f2-448f-b849-658f009c5810">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODQ5_c0310891-5c66-4f12-a6f5-643969ea3477">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MjEyMGZlNmEwMTY4NDE4ZWJlNzY3ZWZiY2E3YjI2MDUvdGFibGVyYW5nZToyMTIwZmU2YTAxNjg0MThlYmU3NjdlZmJjYTdiMjYwNV8xLTAtMS0xLTc2OTEw_9544b347-33d1-4ff9-bba7-26d7bc57e3d8">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MjEyMGZlNmEwMTY4NDE4ZWJlNzY3ZWZiY2E3YjI2MDUvdGFibGVyYW5nZToyMTIwZmU2YTAxNjg0MThlYmU3NjdlZmJjYTdiMjYwNV8xLTMtMS0xLTc2OTEw_a98f0749-5054-4fa2-98da-34e670fad0d9">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGFibGU6MjEyMGZlNmEwMTY4NDE4ZWJlNzY3ZWZiY2E3YjI2MDUvdGFibGVyYW5nZToyMTIwZmU2YTAxNjg0MThlYmU3NjdlZmJjYTdiMjYwNV8yLTMtMS0xLTc2OTEw_0c995ae7-dc53-4ead-a137-5e9463b7d691">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODUw_e8322883-94a6-40a0-b7da-22b9842d6fd6">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i11265eef4aad46d794d22dea392c6203_I20221107"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xL2ZyYWc6ZTdhYzEwODNkNWJkNDBmMzgwMGYzNTdhYzBjYzhhMmYvdGV4dHJlZ2lvbjplN2FjMTA4M2Q1YmQ0MGYzODAwZjM1N2FjMGNjOGEyZl8xODQ2_a96b90f6-f8e9-4f3a-b2f3-c409f9a6655c"
      unitRef="shares">9577026</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNC0xLTEtMS03NjkxMA_99763482-f15f-4b13-8a77-b544be4f95ea"
      unitRef="usd">41000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNC0zLTEtMS03NjkxMA_db14ff2d-a210-43f1-b7ec-3bf271c2a996"
      unitRef="usd">2682000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjc2ZWUyN2E3MzI1MTQ0YmU4OTYxMzYxOTg5MDdkYzU4XzUw_f53bc29b-0e8b-428a-b3b6-860dca76ac40"
      unitRef="usd">11000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjc2ZWUyN2E3MzI1MTQ0YmU4OTYxMzYxOTg5MDdkYzU4XzU3_930bf802-78ba-46af-8eba-b6a3155df2ea"
      unitRef="usd">14000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNS0xLTEtMS03NjkxMA_fb2652c3-f38c-4a32-a23d-ed33ad7ba8d5"
      unitRef="usd">1007000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNS0zLTEtMS03NjkxMA_6e4e3e3b-2872-485e-b5fc-16f1c3c4483e"
      unitRef="usd">1240000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNi0xLTEtMS03NjkxMA_e102b230-4ac1-46c1-9c2c-6e2f88276e35"
      unitRef="usd">6156000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNi0zLTEtMS03NjkxMA_dc6723b4-ea75-478a-b8a0-a10c1911dc08"
      unitRef="usd">7866000</us-gaap:InventoryNet>
    <us-gaap:DepositsAssetsCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNy0xLTEtMS03NjkxMA_2ad93ae1-6da5-4191-8f58-3b4703c753fd"
      unitRef="usd">610000</us-gaap:DepositsAssetsCurrent>
    <us-gaap:DepositsAssetsCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNy0zLTEtMS03NjkxMA_9e71cd07-c610-493a-aa16-627dc23db3fd"
      unitRef="usd">712000</us-gaap:DepositsAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfOC0xLTEtMS03NjkxMA_39b4b885-089f-4e62-b068-d75506d3b9b4"
      unitRef="usd">788000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfOC0zLTEtMS03NjkxMA_c92ad487-b987-4f23-b152-b6c395056712"
      unitRef="usd">924000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTAtMS0xLTEtNzY5MTA_0db083ca-acf2-46e6-8ae5-b0b7a2354470"
      unitRef="usd">8602000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTAtMy0xLTEtNzY5MTA_6185527d-a01d-4a51-a4c2-993a732a1ab4"
      unitRef="usd">13424000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTItMS0xLTEtNzY5MTA_9790f9ea-ef3c-43c3-b86f-fa8805cebf20"
      unitRef="usd">433000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTItMy0xLTEtNzY5MTA_b8f680e7-0891-48d0-aea5-2fa951e99c8c"
      unitRef="usd">675000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTQtMS0xLTEtNzY5MTA_3c3491b5-a196-4689-850e-233a0c2d6738"
      unitRef="usd">1248000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTQtMy0xLTEtNzY5MTA_9b62f43c-b039-433c-8af2-981c8f24910e"
      unitRef="usd">292000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Assets
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTktMS0xLTEtNzY5MTA_8e2487ac-f034-4c53-a176-bf40ca6ccf6e"
      unitRef="usd">10283000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMTktMy0xLTEtNzY5MTA_45863f2e-6f83-463b-bd9f-6673df5cd660"
      unitRef="usd">14391000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjMtMS0xLTEtNzY5MTA_ee0fea8f-e626-4c49-862d-dfdec26e1cb7"
      unitRef="usd">1886000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjMtMy0xLTEtNzY5MTA_de4afcb9-4125-42ec-96cb-dd4e5aa9e3f8"
      unitRef="usd">2235000</us-gaap:AccountsPayableCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjQtMS0xLTEtNzY5MTA_6846977f-22ad-4b2a-b78b-6426dde5bc37"
      unitRef="usd">82000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjQtMy0xLTEtNzY5MTA_27ff4581-592e-466c-8e34-d3e1e061c222"
      unitRef="usd">265000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjUtMS0xLTEtNzY5MTA_72403667-58ab-421a-8ebe-28e3ae67703e"
      unitRef="usd">66000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjUtMy0xLTEtNzY5MTA_18a81855-7140-44d4-a38c-472616bf34e4"
      unitRef="usd">104000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjYtMS0xLTEtNzY5MTA_33f916b1-6ac2-4b1f-ae37-407a20495829"
      unitRef="usd">380000</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjYtMy0xLTEtNzY5MTA_d8d851f7-0569-4773-b396-ba51346a1732"
      unitRef="usd">718000</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:AccruedSalesCommissionCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjctMS0xLTEtNzY5MTA_43b64f6b-07a5-40d0-882a-22f280d127c9"
      unitRef="usd">60000</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:AccruedSalesCommissionCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMjctMy0xLTEtNzY5MTA_e7f69e73-2c82-4396-8117-ed2e4da2b26e"
      unitRef="usd">57000</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzAtMS0xLTEtNzY5MTA_5c4a40c2-53ae-40aa-b805-d91cb919346d"
      unitRef="usd">242000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzAtMy0xLTEtNzY5MTA_aeae9184-d041-4fe2-a214-b3967ce7b068"
      unitRef="usd">295000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzEtMS0xLTEtNzY5MTA_fe764526-1167-41e2-9ad6-96ce74b3a433"
      unitRef="usd">7000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzEtMy0xLTEtNzY5MTA_c9a5d636-e68a-4978-826f-ec3fa2ffe9e9"
      unitRef="usd">268000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzItMS0xLTEtNzY5MTA_6383eee9-6567-4437-917e-fd685883fbc6"
      unitRef="usd">189000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzItMy0xLTEtNzY5MTA_6a5a83d5-edff-419c-b566-7d4ef9f4b115"
      unitRef="usd">325000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzQtMS0xLTEtNzY5MTA_2f370593-131f-4dab-af22-31f18b3f709d"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzQtMy0xLTEtNzY5MTA_291e59c4-cd5c-47cd-8222-952d1018d314"
      unitRef="usd">1000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:NotesPayableCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzctMS0xLTEtNzcwNTc_86b526bb-4268-4bbc-89dc-9e9c8f55f8f9"
      unitRef="usd">1521000</us-gaap:NotesPayableCurrent>
    <us-gaap:NotesPayableCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfMzctMy0xLTEtNzcwNjQ_49e6165d-1603-4580-8e18-64e31220edcc"
      unitRef="usd">1719000</us-gaap:NotesPayableCurrent>
    <us-gaap:NotesPayableRelatedPartiesClassifiedCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDAtMS0xLTEtODMxMDQ_a858dc95-3f9f-4602-babe-3382bde6d7a7"
      unitRef="usd">451000</us-gaap:NotesPayableRelatedPartiesClassifiedCurrent>
    <us-gaap:NotesPayableRelatedPartiesClassifiedCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDAtMy0xLTEtODMxMDQ_df1029fe-cfff-409d-b0f9-dc5da23ee0b3"
      unitRef="usd">0</us-gaap:NotesPayableRelatedPartiesClassifiedCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDAtMS0xLTEtNzY5MTA_d3b140b2-d51b-4dbd-8388-9d587133e261"
      unitRef="usd">1976000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDAtMy0xLTEtNzY5MTA_0d848199-15d2-4f85-8eb5-119f4e0e7463"
      unitRef="usd">2169000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDEtMS0xLTEtNzY5MTA_c272c208-bb0f-42e9-9f7e-fa6c363dbc24"
      unitRef="usd">6860000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmZlMDhkOWQ1MmNlMjRhZmY5OGIzMzA3YjEyNGY4NzcxL3RhYmxlcmFuZ2U6ZmUwOGQ5ZDUyY2UyNGFmZjk4YjMzMDdiMTI0Zjg3NzFfNDEtMy0xLTEtNzY5MTA_338d5763-32e5-4464-b2f6-a7af4860885c"
      unitRef="usd">8156000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfNC0xLTEtMS03NjkxMA_bc7f5dbf-3c0f-4122-92a1-293d26b45c05"
      unitRef="usd">1082000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfNC0zLTEtMS03NjkxMA_c8a3d1ec-c481-4a19-be4b-f79f6411b013"
      unitRef="usd">26000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:LongTermNotesPayable
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfOC0xLTEtMS03NjkxMA_2942c7b2-e65b-4b5d-a562-e88e085bb24a"
      unitRef="usd">815000</us-gaap:LongTermNotesPayable>
    <us-gaap:LongTermNotesPayable
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfOC0zLTEtMS03NjkxMA_12da9d1c-dd66-4d4b-a681-3e59e0d34235"
      unitRef="usd">0</us-gaap:LongTermNotesPayable>
    <us-gaap:Liabilities
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfOS0xLTEtMS03NjkxMA_822f9788-7fbf-48a3-8b9c-fd15795eedbe"
      unitRef="usd">8757000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfOS0zLTEtMS03NjkxMA_c96555ee-bf39-42d6-9177-f00bec2d7c63"
      unitRef="usd">8182000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTItMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo4YzRlZTliYjM2MTM0NDY3YTIwMzc5MzhiZGQ0YTFkZl8zMQ_a1187e28-3905-470a-97b7-9f024bc1d81c"
      unitRef="usdPerShare">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTItMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo4YzRlZTliYjM2MTM0NDY3YTIwMzc5MzhiZGQ0YTFkZl8zMQ_d3ea3d95-2ec7-4dc4-ab96-cfcb7822dc1a"
      unitRef="usdPerShare">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTMtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo1MTZmMDdjNDdkZDE0YmM5YTkzMWRiOGE1ZDI4M2MzZF8xNg_69a2c734-a7a7-421b-b4f3-1de9cefd5f2d"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTMtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo1MTZmMDdjNDdkZDE0YmM5YTkzMWRiOGE1ZDI4M2MzZF8xNg_c6e9bd8f-a1a1-42ba-9760-ec22f3a9fb99"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i3d38772d0d82451f9709b001f8b523db_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTMtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo1MTZmMDdjNDdkZDE0YmM5YTkzMWRiOGE1ZDI4M2MzZF8yNw_21a96024-d878-4d58-9653-99cd0dda9734"
      unitRef="shares">3300000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i955e67119eab4fb9a16c2e4056e33b77_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTMtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo1MTZmMDdjNDdkZDE0YmM5YTkzMWRiOGE1ZDI4M2MzZF8yNw_527d03d4-e567-47c2-8138-b743ecc8d542"
      unitRef="shares">3300000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo2NDExOWNkNGMxNWI0Y2E1OTUzM2E3MDJkN2JkYmI4Zl8yOA_044747d7-f19e-4c28-b5e5-545934630bb2"
      unitRef="shares">876447</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo2NDExOWNkNGMxNWI0Y2E1OTUzM2E3MDJkN2JkYmI4Zl8yOA_3ee05c32-ce87-4411-bc03-c9f86fd7847a"
      unitRef="shares">876447</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo2NDExOWNkNGMxNWI0Y2E1OTUzM2E3MDJkN2JkYmI4Zl8yOA_9cb497fd-ff36-4c2a-ac4b-e80ad4db2699"
      unitRef="shares">876447</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo2NDExOWNkNGMxNWI0Y2E1OTUzM2E3MDJkN2JkYmI4Zl8yOA_b30f9ec2-2c84-406a-b627-61e144fcad95"
      unitRef="shares">876447</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMS0xLTEtNzY5MTA_4270fe3e-242c-431c-8d56-e1cf9f46c9a3"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTQtMy0xLTEtNzY5MTA_c9940578-cc2c-4be4-adb7-6983c3be3b74"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTUtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo4ZTRlNTcyNzM3ZGI0OGZmYTFkNDA4ZjZjODE2OTgzNl8yOA_284b2da0-0737-4492-814e-1cc803add3bb"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTUtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjo4ZTRlNTcyNzM3ZGI0OGZmYTFkNDA4ZjZjODE2OTgzNl8yOA_56b8b3d1-d2eb-4779-aeb6-6d05039ec894"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTYtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjowZTEwNWMwYmQ2Yzc0OGU4YWM2YTk5YmRjOWRlYzU5Nl8xNg_710bc91c-0140-4fae-aa0d-d51b80c4e8f7"
      unitRef="shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTYtMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjowZTEwNWMwYmQ2Yzc0OGU4YWM2YTk5YmRjOWRlYzU5Nl8xNg_fc4f45af-b17e-4afe-8c92-e7b9145572c9"
      unitRef="shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjozMTYxMjBmYmRjYzU0MzY0OWJkMzViZjlmOTI1ZDgxMl8yOA_39819a97-4879-4935-abc5-36e96d674e15"
      unitRef="shares">9191108</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjozMTYxMjBmYmRjYzU0MzY0OWJkMzViZjlmOTI1ZDgxMl8yOA_a727f2e4-155c-487f-a086-c473371962aa"
      unitRef="shares">9191108</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjozMTYxMjBmYmRjYzU0MzY0OWJkMzViZjlmOTI1ZDgxMl80MQ_6a2b2d94-7c71-4cf9-8466-2e562f3b408e"
      unitRef="shares">6368549</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMC0xLTEtNzY5MTAvdGV4dHJlZ2lvbjozMTYxMjBmYmRjYzU0MzY0OWJkMzViZjlmOTI1ZDgxMl80MQ_7ae98625-b61b-4066-9770-9884cda5c6b1"
      unitRef="shares">6368549</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMS0xLTEtNzY5MTA_3cc6b905-f667-404e-9d77-0312bea8afb0"
      unitRef="usd">1000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTctMy0xLTEtNzY5MTA_22fc5521-62f4-4f1b-8990-a49a80addfd2"
      unitRef="usd">0</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTgtMS0xLTEtNzY5MTA_cca3daa2-6e0c-498b-a487-4582c8411ab6"
      unitRef="usd">148238000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTgtMy0xLTEtNzY5MTA_ef21865e-6b16-43ba-8eb0-d76b2a06bed0"
      unitRef="usd">144953000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTktMS0xLTEtNzY5MTA_3c98b548-5cf0-44f2-bf71-28cbd5fb0cfa"
      unitRef="usd">-3000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMTktMy0xLTEtNzY5MTA_01342b16-71fc-4495-9c7c-873fee5f832a"
      unitRef="usd">-3000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjAtMS0xLTEtNzY5MTA_dbbd4ec7-c325-4d63-ab2d-e99cc4be0d7d"
      unitRef="usd">-146710000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjAtMy0xLTEtNzY5MTA_a1ee9c06-749d-496c-8d76-ec937ac9dc7c"
      unitRef="usd">-138741000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjEtMS0xLTEtNzY5MTA_23f3a706-a97b-4189-839e-065c79f96201"
      unitRef="usd">1526000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjEtMy0xLTEtNzY5MTA_8ff92efc-0fc1-43de-b20d-e425eaca27e6"
      unitRef="usd">6209000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjItMS0xLTEtNzY5MTA_fabe287a-f0c6-4f8d-8594-4f61a11683ca"
      unitRef="usd">10283000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xNi9mcmFnOjgzNmQ3NzNkYjIxMzQwOTI5NGI0YzJkZWRkZGJiMmE1L3RhYmxlOmUyOTBiMTUzMzZiNzRlYTA5M2Q1NWY0NTUzOGJiZmU1L3RhYmxlcmFuZ2U6ZTI5MGIxNTMzNmI3NGVhMDkzZDU1ZjQ1NTM4YmJmZTVfMjItMy0xLTEtNzY5MTA_321cbc3b-d9a1-44ad-b027-8d783512fc0b"
      unitRef="usd">14391000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMi0xLTEtMS03NjkxMA_95316e00-a810-4b09-b093-1802e582668d"
      unitRef="usd">1764000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMi0zLTEtMS03NjkxMA_644556ef-02f5-444e-94fd-ddc5ab290b00"
      unitRef="usd">2749000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMi01LTEtMS03NjkxMA_4c7aef76-0064-455c-986b-f908d5a94b5d"
      unitRef="usd">5305000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMi03LTEtMS03NjkxMA_13d92340-4555-4e53-82df-7cd5792109f0"
      unitRef="usd">7460000</us-gaap:Revenues>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMy0xLTEtMS03NjkxMA_95a4a9a5-1b67-475c-8bd9-6f18899306af"
      unitRef="usd">1927000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMy0zLTEtMS03NjkxMA_688ca2f0-4ce6-4d66-8f38-810309df0bf3"
      unitRef="usd">2186000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMy01LTEtMS03NjkxMA_ab4ee247-6138-4861-855b-e8beff3ee610"
      unitRef="usd">5385000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMy03LTEtMS03NjkxMA_7618d331-6239-4069-9be6-2b3505eb56d6"
      unitRef="usd">5951000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNC0xLTEtMS03NjkxMA_1148342d-d316-4797-a3cf-b48192911d0b"
      unitRef="usd">-163000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNC0zLTEtMS03NjkxMA_ed7a5aad-157a-4a29-9531-af0c2cd7a764"
      unitRef="usd">563000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNC01LTEtMS03NjkxMA_a41e1a31-aac6-472e-8ec1-c74cfdbb2a5b"
      unitRef="usd">-80000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNC03LTEtMS03NjkxMA_0f68ea5f-2d9c-45e8-91ab-b8a605fde875"
      unitRef="usd">1509000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNy0xLTEtMS03NjkxMA_ee515f94-0114-492c-931c-2148065bac81"
      unitRef="usd">366000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNy0zLTEtMS03NjkxMA_0a66f8f8-d872-415b-89cf-a6e2f8e7a33a"
      unitRef="usd">404000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNy01LTEtMS03NjkxMA_16af7311-f729-4a0f-a760-f79e50f64847"
      unitRef="usd">1222000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfNy03LTEtMS03NjkxMA_7434bd04-e13d-438f-84bb-f71c49141330"
      unitRef="usd">1427000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOC0xLTEtMS03NjkxMA_4e6ec655-e638-48d8-91ed-c9937dc2e8ed"
      unitRef="usd">1802000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOC0zLTEtMS03NjkxMA_50fb3f3d-c53d-43b7-a577-e30203b760eb"
      unitRef="usd">1968000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOC01LTEtMS03NjkxMA_10df3c0e-b73b-419d-bcbd-ddf2b47adb84"
      unitRef="usd">5893000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOC03LTEtMS03NjkxMA_8f7a468e-da4c-4a8d-b7d8-52007b1bd4ca"
      unitRef="usd">6454000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS0xLTEtMS04MjE4OQ_cc062e09-49a8-42c0-94a3-8705aa745da7"
      unitRef="usd">-76000</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS0zLTEtMS04MjE4OQ_55a4d9bb-54bd-4451-bb36-4dc3f5391308"
      unitRef="usd">0</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS01LTEtMS04MjE4OQ_975a4c54-27c1-4d50-973c-0172a6631dd5"
      unitRef="usd">-76000</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS03LTEtMS04MjE4OQ_f8d496a5-51b1-4b51-8404-9595c9087836"
      unitRef="usd">0</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:RestructuringCosts
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS0xLTEtMS03NjkxMA_6e5b9211-c064-422d-96b6-76edb81a8336"
      unitRef="usd">0</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS0zLTEtMS03NjkxMA_2a205d1d-6bdb-4d73-9607-80c4889f81da"
      unitRef="usd">1000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS01LTEtMS03NjkxMA_1019717f-aa14-4f45-baa0-6165ae43e474"
      unitRef="usd">0</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfOS03LTEtMS03NjkxMA_c940c9dd-becd-40ac-9fcb-5ca79a14f22b"
      unitRef="usd">-21000</us-gaap:RestructuringCosts>
    <us-gaap:OperatingExpenses
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTAtMS0xLTEtNzY5MTA_3bed0f15-6089-498a-aaa0-f94d2845d97d"
      unitRef="usd">2244000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTAtMy0xLTEtNzY5MTA_4699d2f2-82cf-44b2-9e15-75025f836207"
      unitRef="usd">2373000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTAtNS0xLTEtNzY5MTA_ac6fc333-c7b6-4a7e-a75d-ef0a9a3e7ec5"
      unitRef="usd">7191000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTAtNy0xLTEtNzY5MTA_b7dc5e50-ddca-47b2-9c12-0dfad0f54941"
      unitRef="usd">7860000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTEtMS0xLTEtNzY5MTA_90c6ba25-7392-4fa4-adff-24fc5ce6d472"
      unitRef="usd">-2407000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTEtMy0xLTEtNzY5MTA_e07beca0-a8f6-45ed-9421-86cf9181516c"
      unitRef="usd">-1810000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTEtNS0xLTEtNzY5MTA_f7ed1739-353d-48c4-8025-f18bea86d500"
      unitRef="usd">-7271000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTEtNy0xLTEtNzY5MTA_cdb8505a-c388-4018-aefa-5ecac8b09611"
      unitRef="usd">-6351000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTQtMS0xLTEtNzY5MTA_95f4a4cc-7fee-4cb1-863e-b7a664986086"
      unitRef="usd">235000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTQtMy0xLTEtNzY5MTA_20bae324-352d-42bc-bf4a-8a63a24439fe"
      unitRef="usd">177000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTQtNS0xLTEtNzY5MTA_6d4d5c17-1584-4a2d-aa9d-8dc0e969b305"
      unitRef="usd">679000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTQtNy0xLTEtNzY5MTA_18f49f5e-a9a7-4b80-a66c-f27b5eef0041"
      unitRef="usd">520000</us-gaap:InterestExpense>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTUtMS0xLTEtNzY5MTA_dda51cd6-3f1b-4a63-98ab-b25b8f6ca69a"
      unitRef="usd">0</efoi:GainLossOnForgivenessOfDebt>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTUtMy0xLTEtNzY5MTA_d3a95718-7cb2-47a0-9494-6b0033e4efb1"
      unitRef="usd">0</efoi:GainLossOnForgivenessOfDebt>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTUtNS0xLTEtNzY5MTA_d8e28eee-0aeb-4229-b713-82ccab6477c6"
      unitRef="usd">0</efoi:GainLossOnForgivenessOfDebt>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTUtNy0xLTEtNzY5MTA_26a66047-36e0-4724-8d12-f0d2b3342f0e"
      unitRef="usd">801000</efoi:GainLossOnForgivenessOfDebt>
    <us-gaap:OtherNonoperatingIncome
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTctMS0xLTEtNzY5MTA_f56c1b8c-d6ab-49a1-992d-ceae9b491927"
      unitRef="usd">0</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTctMy0xLTEtNzY5MTA_74c5adf1-14d6-4eee-bd18-b5f20fea1703"
      unitRef="usd">862000</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTctNS0xLTEtNzY5MTA_b0a33be3-39f6-4cc6-a423-a8edd3d776b2"
      unitRef="usd">30000</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingIncome
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTctNy0xLTEtNzY5MTA_ca26397b-c873-476e-9b42-7244af5e67d6"
      unitRef="usd">862000</us-gaap:OtherNonoperatingIncome>
    <us-gaap:OtherNonoperatingExpense
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTktMS0xLTEtNzY5MTA_764b23f8-d81e-48c2-9622-783e550e0781"
      unitRef="usd">20000</us-gaap:OtherNonoperatingExpense>
    <us-gaap:OtherNonoperatingExpense
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTktMy0xLTEtNzY5MTA_3e850c29-a7d1-4b98-b17b-7cac7ce55438"
      unitRef="usd">15000</us-gaap:OtherNonoperatingExpense>
    <us-gaap:OtherNonoperatingExpense
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTktNS0xLTEtNzY5MTA_07b6b842-5586-44d6-90e7-37476641a39f"
      unitRef="usd">49000</us-gaap:OtherNonoperatingExpense>
    <us-gaap:OtherNonoperatingExpense
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMTktNy0xLTEtNzY5MTA_fa373e8b-d70a-466c-ad2d-d323eeced88a"
      unitRef="usd">47000</us-gaap:OtherNonoperatingExpense>
    <us-gaap:NetIncomeLoss
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjMtMS0xLTEtNzY5MTA_e0a764f6-22f2-45c9-ba30-313bd3a2e103"
      unitRef="usd">-2662000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjMtMy0xLTEtNzY5MTA_de13d415-4dbe-4142-8c38-82089fe4568b"
      unitRef="usd">-1140000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjMtNS0xLTEtNzY5MTA_c3ff102c-41a8-4e09-b00e-44ec8e5a5353"
      unitRef="usd">-7969000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjMtNy0xLTEtNzY5MTA_563860e9-ff54-4e96-8759-c51ecb6be37b"
      unitRef="usd">-5255000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtMS0xLTEtNzY5MTA_1c7c4ffd-970a-4756-a9ac-047b08344629"
      unitRef="usdPerShare">-0.29</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtMS0xLTEtNzY5MTA_b6fab93a-5cd2-47ea-a0da-49d408646f2d"
      unitRef="usdPerShare">-0.29</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtMy0xLTEtNzY5MTA_34905d1e-a5a8-4e8e-9add-dd4aafb0cbd8"
      unitRef="usdPerShare">-0.22</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtMy0xLTEtNzY5MTA_8a4e3fb1-da00-4907-864b-003aad0168d5"
      unitRef="usdPerShare">-0.22</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtNS0xLTEtNzY5MTA_541b5cae-d7f1-412b-8966-3c93261489f9"
      unitRef="usdPerShare">-1.05</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtNS0xLTEtNzY5MTA_d15b4f7b-54ed-49c2-bbb0-c2507d5fcace"
      unitRef="usdPerShare">-1.05</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtNy0xLTEtNzY5MTA_708ccb65-9209-4673-b4ab-ba3ad52c1a7a"
      unitRef="usdPerShare">-1.22</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjYtNy0xLTEtNzY5MTA_74bfbf53-6e3c-4f27-b521-95b14d1769b9"
      unitRef="usdPerShare">-1.22</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktMS0xLTEtNzY5MTA_1e30c635-eb59-4dc0-b587-2622df8b69a3"
      unitRef="shares">9190000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktMS0xLTEtNzY5MTA_8ec3f064-a864-467f-bb2c-66c2b91b46ac"
      unitRef="shares">9190000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktMy0xLTEtNzY5MTA_36227a2a-173a-4735-bf9a-c4cb7b7a92a6"
      unitRef="shares">5086000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktMy0xLTEtNzY5MTA_3fa08121-24e8-4e40-bd64-dbbc000eddf4"
      unitRef="shares">5086000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktNS0xLTEtNzY5MTA_68406b6e-7f15-43a9-94e5-409226f0150b"
      unitRef="shares">7608000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktNS0xLTEtNzY5MTA_9c8565bc-2f3d-4dfb-962f-a0c29935d887"
      unitRef="shares">7608000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktNy0xLTEtNzY5MTA_4223ca7a-7214-4fef-93d9-5167f9a45b26"
      unitRef="shares">4309000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xOS9mcmFnOjJjY2NmZTZhODQ5YjQ5M2E5YjYyZDMyYzVjNzZhYWEzL3RhYmxlOjcyNDdkNzg1Yjg0MDRjMWViYjY3ZGMxNjU4NDFhYTFlL3RhYmxlcmFuZ2U6NzI0N2Q3ODViODQwNGMxZWJiNjdkYzE2NTg0MWFhMWVfMjktNy0xLTEtNzY5MTA_73823a69-59e2-4cdc-8aa3-f77535a24419"
      unitRef="shares">4309000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:SharesOutstanding
      contextRef="i7987942e09e2471ba2865ed8c06221f0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0yLTEtMS03NjkxMA_3e8d22c1-65d3-4b50-bdb4-3a44abd8b5ec"
      unitRef="shares">876000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i7987942e09e2471ba2865ed8c06221f0_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy00LTEtMS03NjkxMA_e13cdfc6-9d57-449d-b611-154f77b38562"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i72e0031688394ae5a40114993adad6a7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy02LTEtMS03NjkxMA_a6d483f7-2dc8-49ba-89f1-e57abd03c32c"
      unitRef="shares">6368000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i72e0031688394ae5a40114993adad6a7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy04LTEtMS03NjkxMA_0d336f03-119c-4074-970e-f224cac3b6c4"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i45acacd8e3644f8e9ed598ea4ea01d04_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0xNC0xLTEtNzY5MTA_723aa9f4-991b-49b8-bade-a2119fbb5366"
      unitRef="usd">144953000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3ad53c06ea0c4f26a6658e9579659547_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0xNi0xLTEtNzY5MTA_2194c2f2-dd1b-450e-8882-8218a4633e28"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8fa2c8c1cb0e4075b272d7cf5ab91a6b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0xOC0xLTEtNzY5MTA_6ed81d8b-058a-4050-8e0a-6039b52bcbbf"
      unitRef="usd">-138741000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMy0yMC0xLTEtNzY5MTA_23981101-6129-4529-9efe-7f0a263ba6fc"
      unitRef="usd">6209000</us-gaap:StockholdersEquity>
    <efoi:StockIssuedDuringThePeriodSharesWarrantsExercised
      contextRef="i2f420c0ba76a4b158cc9e9783809ad32_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfNi02LTEtMS03NjkxMA_2db4f161-09b7-4791-9ec9-581b46efdd63"
      unitRef="shares">85000</efoi:StockIssuedDuringThePeriodSharesWarrantsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i328f4bb2ed174e6ea382ce91e1950744_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTEtMTQtMS0xLTc2OTEw_beaf7f0b-98a6-4306-977a-5d81da4916af"
      unitRef="usd">44000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ic42811ba035e48908dd8c1fba25ebace_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTEtMjAtMS0xLTc2OTEw_e984c88e-a32f-4963-9f2f-0ab23ff3f625"
      unitRef="usd">44000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="i36d609f995bd456d8c811559e575f5a2_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTItMTgtMS0xLTc2OTEw_93965a6a-2aa5-4085-8a7b-f3cdbe724ed1"
      unitRef="usd">-2821000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ic42811ba035e48908dd8c1fba25ebace_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTItMjAtMS0xLTc2OTEw_6f8b8ab8-de51-47c3-88f1-7135e823cda7"
      unitRef="usd">-2821000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="ia002702261534e99a86b51805aa35694_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMi0xLTEtNzY5MTA_c19b0d17-f707-461b-81d1-0d7c7f8c8f48"
      unitRef="shares">876000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ia002702261534e99a86b51805aa35694_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtNC0xLTEtNzY5MTA_7e66ef5b-7560-4309-9080-5ad3766017f3"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i16c1aa523b6d44b38703ff85f1de1a85_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtNi0xLTEtNzY5MTA_910223bc-d7d8-497d-bc1b-fb74a595822f"
      unitRef="shares">6453000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i16c1aa523b6d44b38703ff85f1de1a85_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtOC0xLTEtNzY5MTA_69cf4b05-f4eb-419b-80d4-6c22fdccb640"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ib4bc8cffa3b540cfa510dca926048535_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMTQtMS0xLTc2OTEw_8978e7f1-5637-4e97-9a61-e5d773193348"
      unitRef="usd">144997000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i1f6ce61750d94268a9797ab11937a018_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMTYtMS0xLTc2OTEw_6c91de67-e611-4024-a847-20806e3ce294"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i41317a18bbe7441eba3cd26f18efe456_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMTgtMS0xLTc2OTEw_ac79ae15-4f02-4abc-9d0a-86e5660d38b4"
      unitRef="usd">-141562000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i80309221754f4f1fbd7ebe9b2bd1fd4c_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTMtMjAtMS0xLTc2OTEw_bbeaef80-697d-431b-878c-1c53b375abc9"
      unitRef="usd">3432000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i27f43545072145d8b67c44614d856844_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTQtNi0xLTEtNzY5MTA_45a2e443-c4f6-4409-a298-74a3fe0aa974"
      unitRef="shares">45000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTQtMTQtMS0xLTc2OTEw_78d6cc7f-6c77-4de7-8a0b-ce642e68e344"
      unitRef="usd">5000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTQtMjAtMS0xLTc2OTEw_7f5fb011-a642-4a7c-8971-78eceac15ba0"
      unitRef="usd">5000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <efoi:StockIssuedDuringThePeriodSharesWarrantsExercised
      contextRef="i27f43545072145d8b67c44614d856844_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTYtNi0xLTEtNzY5MTA_46694706-8f05-4112-84c8-4bf0bfe6956a"
      unitRef="shares">1313000</efoi:StockIssuedDuringThePeriodSharesWarrantsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i27f43545072145d8b67c44614d856844_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTYtOC0xLTEtNzY5MTA_357332e4-6e64-48e1-8e13-c82e90c28954"
      unitRef="usd">1000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTYtMTQtMS0xLTc2OTEw_99cfd13a-2a94-49a4-b0d1-97fb4a788fe0"
      unitRef="usd">3499000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTYtMjAtMS0xLTc2OTEw_b10844fb-d0c7-4c8b-b7e5-ce0ef4a5dca8"
      unitRef="usd">3500000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTgtMTQtMS0xLTc2OTEw_c8b63bfe-a540-43de-9bf3-7c6db851d381"
      unitRef="usd">334000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMTgtMjAtMS0xLTc2OTEw_540e4b68-3191-4377-8745-f599e915266c"
      unitRef="usd">334000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i8161b0305d334f73bc86de972ebe9e1f_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMjQtMTQtMS0xLTc2OTEw_6df364ce-84f6-4804-83ee-df4213a5c48b"
      unitRef="usd">54000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMjQtMjAtMS0xLTc2OTEw_3f605d49-7953-4a27-9b7f-84b0413c7ccb"
      unitRef="usd">54000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="i26993206f60147df9c3afee6f7e56990_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzAtMTgtMS0xLTc2OTEw_59ec398e-451d-42fd-970e-dd5bd449c35e"
      unitRef="usd">-2486000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i2fc35a03e2fc4b84a4efdb24ceabdf8c_D20220401-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzAtMjAtMS0xLTc2OTEw_07adea90-1627-4732-bca4-08ad0fc17dae"
      unitRef="usd">-2486000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="ib27fac473a954075a698cab0d8c7a4b0_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMi0xLTEtNzY5MTA_f29938ca-ffd4-4247-9faa-ccfaf3e32086"
      unitRef="shares">876000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ib27fac473a954075a698cab0d8c7a4b0_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtNC0xLTEtNzY5MTA_ebdceec1-19a0-427f-bb14-aaaa5bfa82e5"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="icf5e7ab6b92f42ccafe6eacbe095e3d5_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtNi0xLTEtNzY5MTA_28f05bc7-ce7f-4d52-9d2f-92ad4d605f28"
      unitRef="shares">7811000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="icf5e7ab6b92f42ccafe6eacbe095e3d5_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtOC0xLTEtNzY5MTA_90a755d7-7743-43d3-b3d6-f731d1cbf3cf"
      unitRef="usd">1000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie83b6cce937a4ea5b744c29249335c2a_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMTQtMS0xLTc2OTEw_760be04b-89de-4cb5-9466-a9ac41956051"
      unitRef="usd">148221000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i151a406e716441da886a4ff8caabb71e_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMTYtMS0xLTc2OTEw_e7717cc9-36c7-4da9-a46e-538859e4c848"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia7ff53291113483ba29d1d932d8513aa_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMTgtMS0xLTc2OTEw_db6fa146-d9b9-4f62-a1cb-3e5ad76ed051"
      unitRef="usd">-144048000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i682c94a884c54808853513b639aaddba_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzEtMjAtMS0xLTc2OTEw_cda63207-0b52-4166-a1f5-0284e5c59cf8"
      unitRef="usd">4171000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="icc215aa7d53b4bc48a392c6a41f72521_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzItNi0xLTEtNzY5MTA_557a597d-971b-4d9e-a687-1c961c4fd250"
      unitRef="shares">1000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <efoi:StockIssuedDuringThePeriodSharesWarrantsExercised
      contextRef="icc215aa7d53b4bc48a392c6a41f72521_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzQtNi0xLTEtODIyNDU_339dc1a9-769d-4163-9405-adad90c099e6"
      unitRef="shares">1379000</efoi:StockIssuedDuringThePeriodSharesWarrantsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i5c3eab43eaee4a109a5db8730847787f_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzYtMTQtMS0xLTc2OTEw_44e1f4f4-7819-43cc-83ab-f82c94da17c5"
      unitRef="usd">17000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzYtMjAtMS0xLTc2OTEw_446e4a19-8584-4781-9f4a-cdeac6a5ea4c"
      unitRef="usd">17000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="ie1eda9d3bbbd441993d7ab74ea4b0f71_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzgtMTgtMS0xLTc2OTEw_9ace4b8f-c6fa-437f-bcbc-58d454b19607"
      unitRef="usd">-2662000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzgtMjAtMS0xLTc2OTEw_6b640c91-61bd-4c62-ad13-345869582d06"
      unitRef="usd">-2662000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i54814654e2da4cd18301f0c1fcd4ebf3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMi0xLTEtNzY5MTA_64a3f904-4f3b-4a92-bfa1-4a00eac5b52a"
      unitRef="shares">876000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i54814654e2da4cd18301f0c1fcd4ebf3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktNC0xLTEtNzY5MTA_416bbb83-2e0c-4e53-b3c0-b658dcb9a489"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="if9335ddc4af449ddbe8158ac552d0a1e_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktNi0xLTEtNzY5MTA_5bd2e8db-9472-4f43-918e-b0c012012316"
      unitRef="shares">9191000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="if9335ddc4af449ddbe8158ac552d0a1e_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktOC0xLTEtNzY5MTA_2495c8e6-65db-4384-a353-d62564c116c2"
      unitRef="usd">1000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i680fcb3afcbe42a9ac1a36186c12588a_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMTQtMS0xLTc2OTEw_b12699da-bde5-4569-81a3-a2b97bf03263"
      unitRef="usd">148238000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i7a9e0e9059fb4fe3b9ee14d9782d254d_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMTYtMS0xLTc2OTEw_8255c723-eb88-4f5a-afe4-02e86a45f4f0"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i87ee04552afd4559b4e08cd2646c428c_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMTgtMS0xLTc2OTEw_4fe815f2-4b77-417f-ae68-5e01ca27a2db"
      unitRef="usd">-146710000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjk2YjQyNGU5YjIzMDQzMDA5NTY1YjZlMTZkNjkyMmZhL3RhYmxlcmFuZ2U6OTZiNDI0ZTliMjMwNDMwMDk1NjViNmUxNmQ2OTIyZmFfMzktMjAtMS0xLTc2OTEw_efa3da16-55dd-459c-98b8-99097ef337fa"
      unitRef="usd">1526000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="id2a97eb146344d1f80c8b08ffc710bfe_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0yLTEtMS03NjkxMA_bd94f6cf-b8b1-4260-8ee0-e4b4c7046ed3"
      unitRef="shares">2597000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="id2a97eb146344d1f80c8b08ffc710bfe_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy00LTEtMS03NjkxMA_76c7e673-e7b8-46cd-af06-0d650c16bc77"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i7c1032415f4d4c3788fe4265579e52c3_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy02LTEtMS03NjkxMA_8f505de1-2c1e-4f7e-ab58-5b6f60eccd4e"
      unitRef="shares">3525000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i7c1032415f4d4c3788fe4265579e52c3_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy04LTEtMS03NjkxMA_283eb3bb-3cb9-462d-af2a-619d11ea8ee5"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i470facc83bc144549bda99f38a36a4c3_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0xNC0xLTEtNzY5MTA_95472926-ffa4-4855-b5d2-5de49beeff46"
      unitRef="usd">135113000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i213d4b0a10204929b6931781d2291628_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0xNi0xLTEtNzY5MTA_07166f91-263f-466c-b85d-a8b34cb3ff1f"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5acde0ce46da4dcfaecef72e955e0963_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0xOC0xLTEtNzY5MTA_420e9cd0-3e5d-4bee-9179-b43086c63bc0"
      unitRef="usd">-130855000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i665a74c29f70404086fd8174e737d9ae_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMy0yMC0xLTEtNzY5MTA_5a958705-2a6b-4cb5-8917-51d7618a6cbd"
      unitRef="usd">4255000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i2e5cb75f952146cfafd3f50cee3d0f62_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfNS02LTEtMS03NjkxMA_812a8d9d-cd28-4ee0-a6d8-5d3a9a036aeb"
      unitRef="shares">1000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <efoi:StockIssuedDuringThePeriodSharesWarrantsExercised
      contextRef="i2e5cb75f952146cfafd3f50cee3d0f62_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfOC02LTEtMS03NjkxMA_67fca215-d365-4388-b140-c523960893b0"
      unitRef="shares">156000</efoi:StockIssuedDuringThePeriodSharesWarrantsExercised>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i86764f26015b4a8b83676c1940ed78e4_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfOC0xNC0xLTEtNzY5MTA_74e0d580-53c2-4017-b177-f3079f1550bf"
      unitRef="usd">527000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i26bb66f827304d46a3935f73d2dc6dfd_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfOC0yMC0xLTEtNzY5MTA_54d9fc81-ca33-43b7-a3ab-672db57e5860"
      unitRef="usd">527000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i86764f26015b4a8b83676c1940ed78e4_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTEtMTQtMS0xLTc2OTEw_05623241-1773-422f-9097-39ee4228c74f"
      unitRef="usd">2000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i26bb66f827304d46a3935f73d2dc6dfd_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTEtMjAtMS0xLTc2OTEw_6ef25cc3-cb66-4b10-b15a-1004f5c0b4f5"
      unitRef="usd">2000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i86764f26015b4a8b83676c1940ed78e4_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTItMTQtMS0xLTc2OTEw_0473a9ae-3113-4791-9e27-1e9242c0d400"
      unitRef="usd">140000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i26bb66f827304d46a3935f73d2dc6dfd_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTItMjAtMS0xLTc2OTEw_6e1257c3-6ddd-418a-a230-7c0b9c9e19a9"
      unitRef="usd">140000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="i21d7e292c62e483aba098b2a517bab34_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTUtMTgtMS0xLTc2OTEw_da45322c-26be-4aa0-ae3a-07fc9262fcaf"
      unitRef="usd">-1642000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i26bb66f827304d46a3935f73d2dc6dfd_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTUtMjAtMS0xLTc2OTEw_d31cb69c-73ac-406f-9e17-0983b567fa07"
      unitRef="usd">-1642000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i22a33ab9df0045418c5db95d468e7c75_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMi0xLTEtNzY5MTA_f1d5ad50-5554-48fc-b8eb-d91e6b461924"
      unitRef="shares">2597000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i22a33ab9df0045418c5db95d468e7c75_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtNC0xLTEtNzY5MTA_3e04f145-1655-4513-832e-7607c413cb37"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i585a56b922c640ce89652fbdf6d902a0_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtNi0xLTEtNzY5MTA_7d7fd844-fee9-478c-90f2-ff6adc04a5a0"
      unitRef="shares">3682000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i585a56b922c640ce89652fbdf6d902a0_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtOC0xLTEtNzY5MTA_ccaa5ff9-501d-410e-8f4a-10a2e833aeff"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if59253d3904443d19142f72b9cfbd593_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMTQtMS0xLTc2OTEw_51d0e905-8597-4d8d-a4a9-9d1c659dd8fe"
      unitRef="usd">135778000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i54c20001f98e4b7088878f0e4434111f_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMTYtMS0xLTc2OTEw_842df31c-e62c-4616-8f20-7f4eb5ef6d32"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie694b4b7a1f2408b93d96398305e67dc_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMTgtMS0xLTc2OTEw_12406ed8-de28-4384-8eda-c993cda7dc63"
      unitRef="usd">-132497000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i2a52ce3f141b427ab0691b45fb7f1ee9_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTYtMjAtMS0xLTc2OTEw_9614311f-0700-414c-b70d-2b6da1212a40"
      unitRef="usd">3278000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i6914353c61624cbb8977a9af61eb9588_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTctNi0xLTEtNzY5MTA_78fb5024-8b1c-470e-8f5d-41b49cdb384d"
      unitRef="shares">69000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTctMTQtMS0xLTc2OTEw_80dbe711-8a12-4a42-82e3-c1e2a9978193"
      unitRef="usd">59000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTctMjAtMS0xLTc2OTEw_d71a117a-cd01-4ffb-993b-c27ca3871491"
      unitRef="usd">59000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="i6914353c61624cbb8977a9af61eb9588_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTgtNi0xLTEtNzY5MTA_00d2bec2-74e2-469d-87d8-228a3c7b7b77"
      unitRef="shares">990000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTgtMTQtMS0xLTc2OTEw_b373b232-29ab-4d1d-aa9c-e78b0f5d10e9"
      unitRef="usd">5000000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTgtMjAtMS0xLTc2OTEw_3e46427b-cdb5-4825-a3b1-3f17f3a80722"
      unitRef="usd">5000000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTktMTQtMS0xLTc2OTEw_817e3b8c-81e6-4526-9480-05c64ce95849"
      unitRef="usd">469000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMTktMjAtMS0xLTc2OTEw_7a1a4cbb-e992-4805-81ef-0863c64c2b50"
      unitRef="usd">469000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="ia7b2dd69ecbb455c812af98f55862fce_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjItMi0xLTEtNzY5MTA_e6cc478b-9611-4382-b377-ab921823feb6"
      unitRef="shares">-1721000</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="i6914353c61624cbb8977a9af61eb9588_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjItNi0xLTEtNzY5MTA_8b7ae18e-0d06-4b89-a28c-27b1fb2c539d"
      unitRef="shares">344000</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i31436d8cd3374a6c88f688480eb34221_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjMtMTQtMS0xLTc2OTEw_e00cc342-af77-4607-b909-93b1b0efe174"
      unitRef="usd">208000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjMtMjAtMS0xLTc2OTEw_4e40f98c-58ee-4772-a349-e3009a3ff750"
      unitRef="usd">208000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="i00b0d086d3ab49c8a683d8954cf4fef5_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjUtMTgtMS0xLTc2OTEw_e22692bd-2441-45aa-94d2-0cedd2d5ad92"
      unitRef="usd">-2473000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ie5465ecad00342b496db25e3f9a693f2_D20210401-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjUtMjAtMS0xLTc2OTEw_47b101e6-42fc-4e4a-b034-ce48c3a23b21"
      unitRef="usd">-2473000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="ic428e490269a445cbf67999688fa8a64_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMi0xLTEtNzY5MTA_1f523ceb-df93-4cff-b6bc-a67263ccd582"
      unitRef="shares">876000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ic428e490269a445cbf67999688fa8a64_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtNC0xLTEtNzY5MTA_ceaef658-22c0-4f3c-ba6b-92b793eb37a7"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i955d48b41786498d99765ea89cb30e42_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtNi0xLTEtNzY5MTA_bd584205-e7c0-4c9a-bd1e-dc0c06131161"
      unitRef="shares">5085000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i955d48b41786498d99765ea89cb30e42_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtOC0xLTEtNzY5MTA_49cb2d3d-3bb2-4027-8191-0d7132f53a91"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i83dae07318134e1cba6b3cebed12e101_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMTQtMS0xLTc2OTEw_116e5a4c-0c0b-416d-93cc-410170b73008"
      unitRef="usd">140576000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i916bec6489234285bc4faba48c47531d_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMTYtMS0xLTc2OTEw_f0fe03e9-f631-4cc3-aaeb-1308aa82845f"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iddc2642da66c4728b01d64e14a2f60e1_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMTgtMS0xLTc2OTEw_0496346a-241d-4e62-927d-7401ed3299d7"
      unitRef="usd">-134970000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5be37111720b4e3db2683efa15ba1627_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjYtMjAtMS0xLTc2OTEw_e9b4a91e-ae3c-44fd-8050-eaeea0ef9140"
      unitRef="usd">5603000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="iab8b96e992724c5f947eff170136e04b_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjctNi0xLTEtNzY5MTA_a304e5e1-e3a8-481a-9486-6acee474ae49"
      unitRef="shares">2000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="ib0b46a49c3e9483f895f7fb43af1d2ae_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjgtMTQtMS0xLTc3MjEz_3c061202-7989-437a-8506-6da0cc8891b5"
      unitRef="usd">1000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjgtMjAtMS0xLTc3MjEz_728d1628-ff2b-492a-a45b-76717a974ed2"
      unitRef="usd">1000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="ib0b46a49c3e9483f895f7fb43af1d2ae_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjgtMTQtMS0xLTc2OTEw_e232fadf-babf-4515-a7fe-643e68018809"
      unitRef="usd">-1000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjgtMjAtMS0xLTc2OTEw_2f64d34c-4c67-4061-8316-809913cb8868"
      unitRef="usd">-1000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ib0b46a49c3e9483f895f7fb43af1d2ae_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjktMTQtMS0xLTc2OTEw_ac4281b6-2488-49a5-a813-e597ee9e8ad3"
      unitRef="usd">39000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMjktMjAtMS0xLTc2OTEw_4fa79286-1a68-4b88-a699-2580b7094b46"
      unitRef="usd">39000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss
      contextRef="ide7c515d7b5c49778860043e22c26b9e_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzAtMTgtMS0xLTc2OTEw_fbecb316-4bb0-4473-8bde-ce57eaeec1ba"
      unitRef="usd">-1140000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzAtMjAtMS0xLTc2OTEw_d3ca9950-ede7-464b-8fce-3a2a07c51aed"
      unitRef="usd">-1140000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i37c5bc61bc3847df8ee41d36acdd3f6b_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMi0xLTEtNzY5MTA_ba1d3df5-fdc5-411f-94f5-b1f687120f2e"
      unitRef="shares">876000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i37c5bc61bc3847df8ee41d36acdd3f6b_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtNC0xLTEtNzY5MTA_588f6052-89a3-4243-a5a5-440345a9413c"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i17b7e1a0f0bd4e0895f819e366d44764_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtNi0xLTEtNzY5MTA_e4a9e79c-3992-4369-922a-811e7f58b0e6"
      unitRef="shares">5087000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i17b7e1a0f0bd4e0895f819e366d44764_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtOC0xLTEtNzY5MTA_382f2180-d7b7-4dcb-b62c-0bf4d4c75cbc"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ibc54bb183c774a3380ffa16006ed5181_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMTQtMS0xLTc2OTEw_4cc888b4-f98c-4aef-b209-79b8878ec9d0"
      unitRef="usd">140615000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i114dc05fb5c64306936cb8d143be1e55_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMTYtMS0xLTc2OTEw_9eb1ea9a-3e55-4c67-966a-3a70d5e44693"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8f44bbd95f6f46c08323693a8d071dfe_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMTgtMS0xLTc2OTEw_31ebb3f3-76e5-4209-80b4-e2325a72682c"
      unitRef="usd">-136110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yMi9mcmFnOmIwYWNmOWFhYmZkYjRiYWI4MDEyMDFhZDFlZTE5MDlmL3RhYmxlOjc3MzgwODQ4NjcwMzQ0NmU4OTU1ZGQ1M2I2NjAxZjk2L3RhYmxlcmFuZ2U6NzczODA4NDg2NzAzNDQ2ZTg5NTVkZDUzYjY2MDFmOTZfMzEtMjAtMS0xLTc2OTEw_9fb60045-cad5-4d8a-8182-cfc3fb766d51"
      unitRef="usd">4502000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMy0xLTEtMS03NjkxMA_0280c0cc-9edb-4cf7-b5d8-3bb7f4b1c5b6"
      unitRef="usd">-2662000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMy0zLTEtMS03NjkxMA_836a130a-24fc-465c-8a45-208fcd474506"
      unitRef="usd">-1140000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMy01LTEtMS03NjkxMA_27e2fd6a-3a16-47fb-81ca-dbecfe27e2a4"
      unitRef="usd">-7969000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMy03LTEtMS03NjkxMA_8617e371-d41c-4c0e-9906-a68491928ce7"
      unitRef="usd">-5255000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherNoncashIncome
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNS0xLTEtMS03NjkxMA_a623c2fe-3279-4eda-b7f5-a5c30763a1cc"
      unitRef="usd">0</us-gaap:OtherNoncashIncome>
    <us-gaap:OtherNoncashIncome
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNS0zLTEtMS03NjkxMA_9d1df7c7-1d3a-43f4-a97d-f14bc3182f2a"
      unitRef="usd">862000</us-gaap:OtherNoncashIncome>
    <us-gaap:OtherNoncashIncome
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNS01LTEtMS03NjkxMA_e51c4aae-6c7a-4c43-b3ce-47f34f5f8616"
      unitRef="usd">30000</us-gaap:OtherNoncashIncome>
    <us-gaap:OtherNoncashIncome
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNS03LTEtMS03NjkxMA_a50af273-717e-41c7-a7df-598ca0ed9e74"
      unitRef="usd">862000</us-gaap:OtherNoncashIncome>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNi0xLTEtMS03NjkxMA_9c6ff7d6-2f60-4183-b4ac-d6ae97fdca06"
      unitRef="usd">0</efoi:GainLossOnForgivenessOfDebt>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNi0zLTEtMS03NjkxMA_d58c6015-921e-415d-ade2-e9b5ba6573e8"
      unitRef="usd">0</efoi:GainLossOnForgivenessOfDebt>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNi01LTEtMS03NjkxMA_65406e68-0829-499f-9d5a-163a81cf11c7"
      unitRef="usd">0</efoi:GainLossOnForgivenessOfDebt>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNi03LTEtMS03NjkxMA_b601987a-7f02-468e-aa53-60006fe80f9e"
      unitRef="usd">801000</efoi:GainLossOnForgivenessOfDebt>
    <us-gaap:Depreciation
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNy0xLTEtMS03NjkxMA_bd134a6f-a364-4a95-b26f-fb52b0a066c0"
      unitRef="usd">42000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNy0zLTEtMS03NjkxMA_c8055b4c-212b-4b50-a178-281f2da7b746"
      unitRef="usd">43000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNy01LTEtMS03NjkxMA_cb0b3429-5b39-4bd3-9931-9aa313785bfc"
      unitRef="usd">129000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfNy03LTEtMS03NjkxMA_4a73e7d8-0bae-4e49-b849-ce5ab7e49b6e"
      unitRef="usd">143000</us-gaap:Depreciation>
    <us-gaap:ShareBasedCompensation
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfOC0xLTEtMS03NjkxMA_c72f4d5a-cc75-4ad0-b379-94d9d16c4b68"
      unitRef="usd">17000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfOC0zLTEtMS03NjkxMA_46b4db3e-91a3-4f64-8840-e3fad3770147"
      unitRef="usd">39000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfOC01LTEtMS03NjkxMA_37b56638-5dd1-4848-830d-c6b384b7073c"
      unitRef="usd">115000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfOC03LTEtMS03NjkxMA_9c159e89-1fa0-458d-9cd1-5e3a73a5a119"
      unitRef="usd">387000</us-gaap:ShareBasedCompensation>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTAtMS0xLTEtNzY5MTA_1d754a0b-047e-41e9-8e23-81994e5c2528"
      unitRef="usd">1000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTAtMy0xLTEtNzY5MTA_20fb2d12-508f-466a-8d39-a31d3a8f4fbf"
      unitRef="usd">2000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTAtNS0xLTEtNzY5MTA_1a3050ff-8de4-4fd4-8461-225120770649"
      unitRef="usd">-3000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTAtNy0xLTEtNzY5MTA_bf5175a3-7937-427c-922f-1903163b3e99"
      unitRef="usd">10000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:InventoryWriteDown
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTEtMS0xLTEtNzY5MTA_0b06de08-60ea-4e45-8c5c-6da5138275b3"
      unitRef="usd">220000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTEtMy0xLTEtNzY5MTA_27ca3af0-dfd7-49e2-a122-9040f52d3bb8"
      unitRef="usd">-70000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTEtNS0xLTEtNzY5MTA_64009277-a760-4163-bf4b-f5738de789b5"
      unitRef="usd">164000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTEtNy0xLTEtNzY5MTA_d416cb6a-9334-45e7-b36b-9fec78fcefa7"
      unitRef="usd">-9000</us-gaap:InventoryWriteDown>
    <efoi:IncreaseDecreaseInProvisionForWarranties
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTItMS0xLTEtNzY5MTA_57841882-9d0d-4c98-90cc-479a58483bc0"
      unitRef="usd">-74000</efoi:IncreaseDecreaseInProvisionForWarranties>
    <efoi:IncreaseDecreaseInProvisionForWarranties
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTItMy0xLTEtNzY5MTA_46605749-e7ca-4b80-8b4b-ae307d296c9d"
      unitRef="usd">1000</efoi:IncreaseDecreaseInProvisionForWarranties>
    <efoi:IncreaseDecreaseInProvisionForWarranties
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTItNS0xLTEtNzY5MTA_d8e9eddc-0498-4a52-95ee-c7b367785777"
      unitRef="usd">-53000</efoi:IncreaseDecreaseInProvisionForWarranties>
    <efoi:IncreaseDecreaseInProvisionForWarranties
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTItNy0xLTEtNzY5MTA_d3a81ada-7ebc-4906-9495-4f374559684b"
      unitRef="usd">13000</efoi:IncreaseDecreaseInProvisionForWarranties>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTQtMS0xLTEtNzY5MTA_8a148da9-2ef6-4ba3-ad9d-b4cf91f5502c"
      unitRef="usd">87000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTQtMy0xLTEtNzY5MTA_2b035c36-bf61-46dc-aeed-4506c309b188"
      unitRef="usd">61000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTQtNS0xLTEtNzY5MTA_6bcfc8b0-3213-441a-8cd8-eb470219b7d5"
      unitRef="usd">247000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:AmortizationOfDebtDiscountPremium
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTQtNy0xLTEtNzY5MTA_de2f0e36-956c-4ca9-ab79-515ae8103c1d"
      unitRef="usd">158000</us-gaap:AmortizationOfDebtDiscountPremium>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTUtMS0xLTEtNzY5MTA_4432e0cb-440e-4845-ac68-f929be31cc78"
      unitRef="usd">-76000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTUtMy0xLTEtNzY5MTA_62752815-9939-4322-b1a5-698bee73d20c"
      unitRef="usd">0</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTUtNS0xLTEtNzY5MTA_bc0fff6d-69ad-4978-9a94-d9476b3a969f"
      unitRef="usd">-76000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTUtNy0xLTEtNzY5MTA_26314446-ec6f-4832-899c-596ed499bdc6"
      unitRef="usd">0</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTctMS0xLTEtNzY5MTA_c153d7aa-7964-4277-a2ca-720d149c26eb"
      unitRef="usd">-139000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTctMy0xLTEtNzY5MTA_a4618cde-5ade-46e7-82b4-109e40d66e08"
      unitRef="usd">500000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTctNS0xLTEtNzY5MTA_b3b3c5a0-4da6-4e0b-ab24-90b3137fbf20"
      unitRef="usd">-240000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTctNy0xLTEtNzY5MTA_e353a1dd-2b47-4ccc-a39c-1d4ce9f7d8c4"
      unitRef="usd">-390000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTgtMS0xLTEtNzY5MTA_f7b399d1-c58b-4538-8384-dfb28a528a5a"
      unitRef="usd">-792000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTgtMy0xLTEtNzY5MTA_28cbf139-9961-4d83-8c60-3536deb9f870"
      unitRef="usd">-444000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTgtNS0xLTEtNzY5MTA_61fb3023-395a-4f02-b273-9fcb426329c3"
      unitRef="usd">-1546000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTgtNy0xLTEtNzY5MTA_a4961c50-55b8-4ab2-95cd-06f990e2bb43"
      unitRef="usd">2105000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInDepositOtherAssets
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTktMS0xLTEtNzY5MTA_e701ee55-8bab-4d77-94b1-7388b5fc7b3b"
      unitRef="usd">110000</us-gaap:IncreaseDecreaseInDepositOtherAssets>
    <us-gaap:IncreaseDecreaseInDepositOtherAssets
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTktMy0xLTEtNzY5MTA_b4eda2b1-af73-41d6-a3e1-8cfc62e918df"
      unitRef="usd">62000</us-gaap:IncreaseDecreaseInDepositOtherAssets>
    <us-gaap:IncreaseDecreaseInDepositOtherAssets
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTktNS0xLTEtNzY5MTA_3716bef0-8db0-4f09-800e-1fa83a95feda"
      unitRef="usd">51000</us-gaap:IncreaseDecreaseInDepositOtherAssets>
    <us-gaap:IncreaseDecreaseInDepositOtherAssets
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMTktNy0xLTEtNzY5MTA_ee06d9aa-6315-4a53-a9c9-691b0079a9ee"
      unitRef="usd">-87000</us-gaap:IncreaseDecreaseInDepositOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjAtMS0xLTEtNzY5MTA_bd1876fe-1625-4263-bc22-0cfa3bde6cdc"
      unitRef="usd">-46000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjAtMy0xLTEtNzY5MTA_4b0f9d68-4bdb-40b7-943e-924442d47cdb"
      unitRef="usd">91000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjAtNS0xLTEtNzY5MTA_3741d34d-041f-4894-82c6-c41354a7a1a2"
      unitRef="usd">-162000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjAtNy0xLTEtNzY5MTA_45595f69-61b8-4c45-8c79-ad17b0f7bc61"
      unitRef="usd">119000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjEtMS0xLTEtNzY5MTA_91cf49c0-b813-406f-85b9-c2e7415debf1"
      unitRef="usd">629000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjEtMy0xLTEtNzY5MTA_b89ed976-d92e-4a32-a74f-0f7e13136dc7"
      unitRef="usd">-164000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjEtNS0xLTEtNzY5MTA_ecbfd799-716b-4c0a-9728-2668297e72d9"
      unitRef="usd">-92000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjEtNy0xLTEtNzY5MTA_6a5d810b-f830-4112-a3b8-26aea1fb45c6"
      unitRef="usd">-82000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjItMS0xLTEtNzY5MTA_3a6fdfb0-ae7e-4f78-989c-5624f9495fb7"
      unitRef="usd">-101000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjItMy0xLTEtNzY5MTA_7ebd433a-16d7-46be-a9d4-688397fd5edd"
      unitRef="usd">53000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjItNS0xLTEtNzY5MTA_c0f515d5-9d3a-4a62-84c3-3ab38e1eeace"
      unitRef="usd">-461000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjItNy0xLTEtNzY5MTA_ddec555a-08ac-4998-bd1c-3003f9255fe8"
      unitRef="usd">-305000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjMtMS0xLTEtNzY5MTA_26404198-f9fb-4309-bb47-c9559c107f95"
      unitRef="usd">7000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjMtMy0xLTEtNzY5MTA_4184c0c0-522b-4057-8bff-e3a612e890ef"
      unitRef="usd">-69000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjMtNS0xLTEtNzY5MTA_da4c853f-963c-4aeb-ad88-fc39154ee3a1"
      unitRef="usd">-261000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjMtNy0xLTEtNzY5MTA_343f84f6-4d0e-4887-8f83-b6fd90afad52"
      unitRef="usd">-70000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjQtMS0xLTEtNzY5MTA_5c33455b-fcce-41fe-86a1-852705e6eb06"
      unitRef="usd">1771000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjQtMy0xLTEtNzY5MTA_bd66ac27-0054-4388-83aa-010e2be7a117"
      unitRef="usd">-1175000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjQtNS0xLTEtNzY5MTA_41a21b85-7826-4068-a8d8-e3c2233fe190"
      unitRef="usd">1728000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjQtNy0xLTEtNzY5MTA_4be8a0e8-4173-4b7b-9ced-b2a683ff983e"
      unitRef="usd">-3165000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjUtMS0xLTEtNzY5MTA_2b22c22f-f272-451d-9bc9-b3685e0c9938"
      unitRef="usd">-891000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjUtMy0xLTEtNzY5MTA_c6f907cf-6261-4a72-8bc6-aecb05447f6a"
      unitRef="usd">-2315000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjUtNS0xLTEtNzY5MTA_7d46c800-abfb-4e93-b573-d3501501fc47"
      unitRef="usd">-6241000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjUtNy0xLTEtNzY5MTA_b6dac422-4af7-4095-a9f8-b111a532d7d5"
      unitRef="usd">-8420000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjctMS0xLTEtNzY5MTA_a5f9f403-ae52-458f-92bb-5c6785622d35"
      unitRef="usd">9000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjctMy0xLTEtNzY5MTA_eac7462c-e86c-49a5-9a4f-841c6cca965a"
      unitRef="usd">100000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjctNS0xLTEtNzY5MTA_f9af6f35-9bf8-4eef-930c-ddabe6406bc6"
      unitRef="usd">41000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjctNy0xLTEtNzY5MTA_7d9e3172-74db-4b65-94d6-935d717721f5"
      unitRef="usd">311000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjktMS0xLTEtNzY5MTA_0c95346d-81fd-4fea-b11f-562a3a9eb02d"
      unitRef="usd">-9000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjktMy0xLTEtNzY5MTA_e7096985-011d-40dd-bc62-a94d3557aa4c"
      unitRef="usd">-100000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjktNS0xLTEtNzY5MTA_9a2003dc-c61a-43a7-9916-7cb2c4908876"
      unitRef="usd">-41000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjk2MDMzYTliYTY0NDQ3MzY5MTVkMjk1NTRiYWRhZTQwL3RhYmxlcmFuZ2U6OTYwMzNhOWJhNjQ0NDczNjkxNWQyOTU1NGJhZGFlNDBfMjktNy0xLTEtNzY5MTA_0e995500-9917-4416-b329-9c3f12774eeb"
      unitRef="usd">-311000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMy0xLTEtMS03NjkxMA_f78019ae-fe66-4741-82d1-067114822888"
      unitRef="usd">0</efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants>
    <efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMy0zLTEtMS03NjkxMA_27ef1345-a396-499d-9089-1773ce8af372"
      unitRef="usd">0</efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants>
    <efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMy01LTEtMS03NjkxMA_2f753833-04d2-445c-9802-c14d02b9f142"
      unitRef="usd">3500000</efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants>
    <efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMy03LTEtMS03NjkxMA_9ecfa4e1-9b82-4e07-8869-4345f7e08692"
      unitRef="usd">5000000</efoi:ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNC0xLTEtMS03NjkxMA_f8cbbd88-ba43-4886-9d51-a4d34f0fd57b"
      unitRef="usd">0</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNC0zLTEtMS03NjkxMA_4981f813-1a13-4769-a346-64ba3cde623f"
      unitRef="usd">0</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNC01LTEtMS03NjkxMA_c93055de-0432-4870-ac0d-81c198cec166"
      unitRef="usd">0</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNC03LTEtMS03NjkxMA_9fff75e3-f16d-4211-ad76-cd5ee38586ca"
      unitRef="usd">527000</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNS0xLTEtMS03NjkxMA_10fe9e8d-0981-4272-8557-1bc2767742af"
      unitRef="usd">0</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNS0zLTEtMS03NjkxMA_db9ac8b9-ceec-45b5-b092-60281ff6602c"
      unitRef="usd">1000</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNS01LTEtMS03NjkxMA_55496451-c6f6-4898-8e7f-5cb69a06b388"
      unitRef="usd">334000</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNS03LTEtMS03NjkxMA_26711365-6b4c-4048-9fe2-81b273b90389"
      unitRef="usd">470000</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNy0xLTEtMS03NjkxMA_6fda7705-6705-44e8-9b86-0f3767565410"
      unitRef="usd">0</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNy0zLTEtMS03NjkxMA_7949c9d0-691d-4f5c-8804-32c80bc866a8"
      unitRef="usd">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNy01LTEtMS03NjkxMA_8a2fee25-9395-443f-8395-cf207cbeafa1"
      unitRef="usd">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfNy03LTEtMS03NjkxMA_18bbed0e-1581-4972-87c1-5b4fb019efa2"
      unitRef="usd">3000</us-gaap:FinanceLeasePrincipalPayments>
    <efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOC0xLTEtMS03NjkxMA_a73ddc77-0878-441d-bc86-e1fec7f1f231"
      unitRef="usd">0</efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans>
    <efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOC0zLTEtMS03NjkxMA_0c06262a-2ec5-4cb5-b51a-51a90b48af9b"
      unitRef="usd">0</efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans>
    <efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOC01LTEtMS03NjkxMA_f32443d7-b9ea-4e93-8c6d-324d5f3b28df"
      unitRef="usd">5000</efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans>
    <efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOC03LTEtMS03NjkxMA_0fb4dc57-6f7c-48bc-a7cf-ebfa385c0dd4"
      unitRef="usd">59000</efoi:ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOS0xLTEtMS03NjkxMA_1534c4e5-b17d-4125-b603-54826724de90"
      unitRef="usd">0</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOS0zLTEtMS03NjkxMA_12138f1b-65ca-4371-9d7f-b180a57b99e7"
      unitRef="usd">-1000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOS01LTEtMS03NjkxMA_5d67256e-584f-45ef-88b1-a2cfb229456b"
      unitRef="usd">0</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfOS03LTEtMS03NjkxMA_e022ea62-1b09-4a22-9d27-92bad0f48706"
      unitRef="usd">1000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i18c689fb0f414e3eb031cde5879f5268_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTEtMS0xLTEtNzY5MTA_41ecfda2-50d5-413d-9776-84edb20c0896"
      unitRef="usd">0</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i91e93d00b627463cba94c43dd3d1a008_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTEtMy0xLTEtNzY5MTA_e8cb4b80-2b2a-4666-b395-e5b073cf9019"
      unitRef="usd">0</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i8a79c33feff848359dd54eec991a97f6_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTEtNS0xLTEtNzY5MTA_abae5aec-96c1-444e-86cb-9be4bfda8fe1"
      unitRef="usd">0</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="id9521dddca564db0a623980c42c97b0e_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTEtNy0xLTEtNzY5MTA_7bfc22e3-9642-4340-be29-f24b09031243"
      unitRef="usd">1515000</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="i18c689fb0f414e3eb031cde5879f5268_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTItMS0xLTEtNzY5MTA_a0828f60-2b04-43fc-bca4-4ef20e6a03c8"
      unitRef="usd">410000</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="i91e93d00b627463cba94c43dd3d1a008_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTItMy0xLTEtNzY5MTA_79934ec1-3ade-4793-854d-c88d711a66c8"
      unitRef="usd">0</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="i8a79c33feff848359dd54eec991a97f6_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTItNS0xLTEtNzY5MTA_75c96dec-8fe8-440a-accb-95b61424ca12"
      unitRef="usd">1435000</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="id9521dddca564db0a623980c42c97b0e_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTItNy0xLTEtNzY5MTA_1e57b327-284c-4505-baa3-d47f8f120b8c"
      unitRef="usd">0</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="ic61ce08aeede4ac7beee549cbfb8591a_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTMtMS0xLTEtNzY5MTA_c5cb5981-594f-449e-b8d1-50cfdf611b20"
      unitRef="usd">0</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i176368470a454b5aaa77dcbae6ab3f2d_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTMtMy0xLTEtNzY5MTA_a85be537-9350-4eef-8c75-c569ff81b030"
      unitRef="usd">0</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="ib76b892bcc8a44c098293a01fa41865f_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTMtNS0xLTEtNzY5MTA_5f35abe6-e69a-43cf-a9ad-bfb86255d65d"
      unitRef="usd">2000000</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i75cceb313bf04e6b998e12638d958d7f_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTMtNy0xLTEtNzY5MTA_8a9d135f-c8ec-4ce6-ab6e-9badc164867d"
      unitRef="usd">0</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTUtMS0xLTEtODAzNTA_6cd66277-3731-4889-9056-caec883b2644"
      unitRef="usd">450000</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTUtMy0xLTEtODAzNTA_e9c02f65-a212-4080-9e3e-a3e67ec43784"
      unitRef="usd">0</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTUtNS0xLTEtODAzNTA_1f82fc95-0599-491d-a43b-8741ed65251d"
      unitRef="usd">450000</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTUtNy0xLTEtODAzNTA_43a9afb7-19b0-4bf8-8864-e1f2e4b457e2"
      unitRef="usd">0</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTYtMS0xLTEtNzY5MTA_1583b7bc-b02d-48eb-b81a-50bee4b2ef80"
      unitRef="usd">95000</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTYtMy0xLTEtNzY5MTA_4916af25-44ac-4b68-9622-2c15f8a88252"
      unitRef="usd">0</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTYtNS0xLTEtNzY5MTA_89b77317-8cff-41b1-8cc3-f5c1035765ca"
      unitRef="usd">329000</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTYtNy0xLTEtNzY5MTA_bbecc472-9c4a-404a-9e5a-48f1dbe50507"
      unitRef="usd">30000</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTgtMS0xLTEtNzY5MTA_ce5191a8-5ac9-44ed-af15-1facd2cca8d1"
      unitRef="usd">58000</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTgtMy0xLTEtNzY5MTA_ed4ca317-9e63-4b6b-b75e-69c6a9a36279"
      unitRef="usd">1128000</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTgtNS0xLTEtNzY5MTA_11d7c665-07f7-44da-bf2c-45400fc5164c"
      unitRef="usd">-215000</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTgtNy0xLTEtNzY5MTA_2707295b-f829-4736-a288-c695537963ee"
      unitRef="usd">337000</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTktMS0xLTEtNzY5MTA_211ef17a-dc3c-4c91-aa7c-6e6f10c97e43"
      unitRef="usd">3000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTktMy0xLTEtNzY5MTA_2c27bde0-a623-4bdb-b12e-206ab5a2acf4"
      unitRef="usd">1127000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTktNS0xLTEtNzY5MTA_a0ad200d-dd91-43e3-a2fc-910f35a5c631"
      unitRef="usd">3641000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMTktNy0xLTEtNzY5MTA_dfed2192-34ed-422c-87e3-63d0517b4aeb"
      unitRef="usd">6934000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjMtMS0xLTEtNzY5MTA_cd4440d0-65b0-4141-bdce-c429ee37469e"
      unitRef="usd">-897000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjMtMy0xLTEtNzY5MTA_5930c7aa-def1-4314-99d2-0f95b5a84544"
      unitRef="usd">-1288000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjMtNS0xLTEtNzY5MTA_8bccbd2e-8e79-4d18-8f16-e3ff5530f4dd"
      unitRef="usd">-2641000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjMtNy0xLTEtNzY5MTA_a9536f89-d930-4593-9466-afc985b399c1"
      unitRef="usd">-1797000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i682c94a884c54808853513b639aaddba_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjQtMS0xLTEtNzY5MTA_0a13e067-a8ed-4d7c-b5ad-45010eedaf6a"
      unitRef="usd">938000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i5be37111720b4e3db2683efa15ba1627_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjQtMy0xLTEtNzY5MTA_bf4243ba-746c-4545-a85d-89ca99525007"
      unitRef="usd">1669000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjQtNS0xLTEtNzY5MTA_f1044835-a719-4811-9d51-109de2a571e4"
      unitRef="usd">2682000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i665a74c29f70404086fd8174e737d9ae_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjQtNy0xLTEtNzY5MTA_02066917-987c-4d86-92a4-105c4ef3b270"
      unitRef="usd">2178000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjUtMS0xLTEtNzY5MTA_443ba056-61b4-4619-8fa4-8bf5a10901c9"
      unitRef="usd">41000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjUtMy0xLTEtNzY5MTA_3cf90187-7e95-46b8-81e2-1b086a5193fa"
      unitRef="usd">381000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjUtNS0xLTEtNzY5MTA_cb08dcaa-e9da-4921-80f8-1ec3beb3884c"
      unitRef="usd">41000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18yOC9mcmFnOmFhZTA4MDE3N2I4YTQ5NTRhYzk4YzU4ZGNjNmIzYmVhL3RhYmxlOjEwOGUxMTA4ZjhkNzQzNTE5YzVhZWY2YzU3M2EwMWNhL3RhYmxlcmFuZ2U6MTA4ZTExMDhmOGQ3NDM1MTljNWFlZjZjNTczYTAxY2FfMjUtNy0xLTEtNzY5MTA_54d44e47-e230-4d53-a453-4a9ffd44def2"
      unitRef="usd">381000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:NatureOfOperations
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18zNC9mcmFnOjAwM2IyNjk5OGMzMTQ0MGE5Njk3YzZjZWRiYTg2ZGYyL3RleHRyZWdpb246MDAzYjI2OTk4YzMxNDQwYTk2OTdjNmNlZGJhODZkZjJfMTU0MQ_c24f4194-cd17-4fa6-84bb-246f5a3c54f3">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;Energy Focus, Inc. engages primarily in the design, development, manufacturing, marketing and sale of energy-efficient lighting and controls systems products. We develop, market and sell high quality light-emitting diode (&#x201c;LED&#x201d;) lighting and controls products in the commercial market and military maritime market (&#x201c;MMM&#x201d;), and expanded our offerings into the consumer market beginning in the fourth quarter of 2021. Our mission is to enable our customers to run their facilities, offices and homes with greater energy efficiency, productivity, and human health and wellness through advanced LED retrofit solutions. Our goal is to be the human wellness lighting and LED lighting technology and market leader for the most demanding applications where performance, quality, value, 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-grade tubular LED (&#x201c;TLED&#x201d;) products, as well as other LED and lighting control products for commercial and consumer applications. After evaluating market demand and supply chain challenges for our ultraviolet-C light disinfection products, we have revised our marketing strategy to primarily focus on our MMM and commercial and industrial lighting and control products.</us-gaap:NatureOfOperations>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MDE_e6e33af7-8886-4439-9593-86f20bcdfefc">&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="margin-bottom:10pt"&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 and nine months ended September&#160;30, 2022 and 2021 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, 2021 (&#x201c;2021 Annual Report&#x201d;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2021 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 style="margin-bottom:10pt"&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 September&#160;30, 2022 and December&#160;31, 2021, Condensed Consolidated Statements of Operations for the three and nine months ended September&#160;30, 2022 and 2021, Condensed Consolidated Statements of Changes in Stockholders&#x2019; Equity for the three and nine months ended September&#160;30, 2022 and 2021, and Condensed Consolidated Statements of Cash Flows for the three and nine months ended September&#160;30, 2022 and 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 September 30, 2022, sales to a regional commercial lighting retrofit company accounted for approximately 32% of net sales. For the three months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 19%, 17% and 27% 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 36% of net sales for the same period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 nine months ended September 30, 2022, sales to our primary distributor for the U.S. Navy, a regional commercial lighting retrofit company, and a commercial building system provider, accounted for approximately 13%, 15%, and 10% 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 17% of net sales for the same period. For the nine months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 33%, 10% and 17% 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 43% of net sales for the same period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A regional commercial lighting retrofit company, a commercial building systems provider, and a U.S. Navy mechanical contractor accounted for approximately 25%, 12%, and 12% of net trade accounts receivable, respectively, at September&#160;30, 2022. At December&#160;31, 2021, a distributor to the U.S. Department of Defense accounted for 20% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 36% of our net trade accounts receivable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;One offshore supplier accounted for approximately 17% and 18%, respectively, of our total expenditures for the three and nine months ended September&#160;30, 2022. For the three and nine months ended September&#160;30, 2021, one offshore supplier accounted for approximately 19% and 30%, respectively, of total expenditures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At September&#160;30, 2022, one offshore supplier accounted for approximately 45% of our trade accounts payable balance. At December&#160;31, 2021, this offshore supplier accounted for approximately 60% of our trade accounts payable balance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 pronouncement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 but do not expect any material financial statement impact upon adoption.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 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 &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.206%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.110%"/&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:9.110%"/&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: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:9.110%"/&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:9.114%"/&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;September 30,&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="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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;2021&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: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;2022&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;2021&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;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="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;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;/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;1,288&#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,522&#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;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;3,397&#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;3,513&#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;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;476&#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,227&#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;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,908&#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,947&#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: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;1,764&#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;2,749&#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 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;5,305&#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;7,460&#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;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our trade accounts receivable consists of amounts billed to and currently due from customers. Our customers are 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 a third-party account receivable insurance program with a very 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 credit-worthiness ratings and metrics that significantly assist us in evaluating the credit worthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of account receivables 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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 for major 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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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. For the three months ended September 30, 2022 and September&#160;30, 2021, less than 1% of sales were attributable to customers outside the United States. For the nine months ended September 30, 2022 and September&#160;30, 2021, approximately 1% of sales were attributable to customers outside the United States. 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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 presents a reconciliation of basic and diluted loss per share computations (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.506%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.110%"/&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:9.110%"/&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:9.110%"/&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:9.113%"/&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;September 30,&lt;/span&gt;&lt;/td&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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;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;2022&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;2021&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;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="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;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;(2,662)&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,140)&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;(7,969)&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;(5,255)&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: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="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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;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="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="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;Basic and diluted 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;9,190&#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;5,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="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;7,608&#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,309&#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;td colspan="3" style="display:none"/&gt;&lt;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 style="margin-bottom:10pt"&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 September 30, 2022,  warrants and convertible securities representing approximately 220&#160;thousand and 175&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation because their inclusion would have been anti-dilutive. As a result of the net loss we incurred for the three months ended September 30, 2021, options, warrants and convertible securities representing approximately 41&#160;thousand, 11&#160;thousand and 175&#160;thousand shares of common stock, respectively, 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 style="margin-bottom:10pt"&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 nine months ended September 30, 2022, warrants and convertible securities representing approximately 201&#160;thousand and 175&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation because their inclusion would have been anti-dilutive. As a result of the net loss we incurred for the nine months ended September 30, 2021, options, warrants and convertible securities representing approximately 60&#160;thousand, 56&#160;thousand and 289&#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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We warrant our commercial and MMM LED products and controls for periods generally ranging from &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_3aa032ef-d1be-49b9-9d46-a1940c7bf3fc"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_c24d493e-2d1f-4b2e-a4a3-7b64303ed106"&gt;five&lt;/span&gt;&lt;/span&gt; to ten 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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.806%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.110%"/&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:9.110%"/&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:9.110%"/&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:9.114%"/&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;September 30,&lt;/span&gt;&lt;/td&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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;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;2022&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;2021&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;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;315&#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;239&#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;295&#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;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;/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, net of changes in inventory reserves for replacements&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;(23)&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;10&#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;(17)&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;49&#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;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;(57)&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;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;(29)&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;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;/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;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="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;(13)&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)&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;(52)&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;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;242&#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="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;242&#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;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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;June 2022 Private Placement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2022, we completed a private placement (the &#x201c;June 2022 Private Placement&#x201d;) with certain institutional investors for the sale of 1,313,462 shares of our common stock at a purchase price of $1.30 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#x201c;June 2022 Pre-Funded Warrants&#x201d;) to purchase 1,378,848 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the June 2022 Pre-Funded Warrants, the &#x201c;June 2022 Warrants&#x201d;) to purchase up to an aggregate of 2,692,310 shares of common stock at an exercise price of $1.30 per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $252&#160;thousand, plus $35&#160;thousand in expenses, and we also paid legal, accounting and other fees of $47&#160;thousand. Total offering costs of $334&#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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $3.2 million. We determined the exercise price of the June 2022 Pre-Funded Warrants to be nominal and, as such, have considered the 1,378,848 shares underlying them to be outstanding effective June 7, 2022, for purposes of calculating net loss per share. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In July 2022, all of the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of 2,692,310 shares remained outstanding, with a weighted average exercise price of $1.30 per share. The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $3.5 million in the aggregate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;December 2021 Private Placement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2021, we completed a private placement (the &#x201c;December 2021 Private Placement&#x201d;) with certain institutional investors for the sale of 1,193,185 shares of our common stock at a purchase price of $3.52 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#x201c;December 2021 Pre-Funded Warrants&#x201d;) to purchase 85,228 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the December 2021 Pre-Funded Warrants, the &#x201c;December 2021 Warrants&#x201d;) to purchase up to an aggregate of 1,278,413 shares of common stock at an exercise price of $3.52 per share. In connection with the December 2021 Private Placement, we paid the placement agent commissions of $360&#160;thousand, plus $42&#160;thousand in expenses, and we also paid legal, accounting and other fees of $97&#160;thousand. Total offering costs of $499&#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, 2021. Net proceeds to us from the December 2021 Private Placement were approximately $4.0 million. We determined the exercise price of the December 2021 Pre-Funded Warrants to be nominal and, as such, have considered the 85,228 shares underlying them to be outstanding effective December 16, 2021, for purposes of calculating net loss per share. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2022, all of the December 2021 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of 1,278,413 shares remained outstanding, with an exercise price of $3.52 per share. The exercise of the remaining December 2021 Warrants outstanding could provide us with cash proceeds of up to $4.5 million in the aggregate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;June 2021 Equity Offering&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2021, we completed a registered direct offering of 990,100 shares of our common stock to certain institutional investors, at a purchase price of $5.05 per share (the &#x201c;June 2021 Equity Offering&#x201d;). We paid the placement agent commissions of $400 thousand, plus $51 thousand in expenses, in connection with the June 2021 Equity Offering, and we also paid legal and other fees of $18&#160;thousand. Total offering costs of $469&#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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $4.5 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;January 2020 Equity Offering&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2020, we completed a registered direct offering 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 (the &#x201c;Investor Warrants&#x201d;) in a concurrent private placement (together with the concurrent registered direct offering, the &#x201c;January 2020 Equity Offering&#x201d;) for a purchase price of $0.625 per warrant. 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 (together with the Investor Warrants, the &#x201c;January 2020 Warrants&#x201d;).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 September&#160;30, 2022, January 2020 Warrants to purchase an aggregate of 229,414 shares remain outstanding with a weighted average exercise price of $3.67 per share. The exercise of these warrants could provide us with cash proceeds of up to $0.8 million in the aggregate. During the nine months ended September 30, 2022, none of these warrants were exercised. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 September&#160;30, 2021, January 2020 Warrants to purchase an aggregate of 310,860 shares remained outstanding with a weighted average exercise price of $3.59 per share. During the nine months ended September 30, 2021, 156,446 January 2020 Warrants were exercised resulting in total proceeds of $527&#160;thousand.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 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 style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1ODM_80d90a81-45e4-4138-bd2d-55ac7c36918c">&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="margin-bottom:10pt"&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 and nine months ended September&#160;30, 2022 and 2021 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, 2021 (&#x201c;2021 Annual Report&#x201d;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2021 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 style="margin-bottom:10pt"&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 September&#160;30, 2022 and December&#160;31, 2021, Condensed Consolidated Statements of Operations for the three and nine months ended September&#160;30, 2022 and 2021, Condensed Consolidated Statements of Changes in Stockholders&#x2019; Equity for the three and nine months ended September&#160;30, 2022 and 2021, and Condensed Consolidated Statements of Cash Flows for the three and nine months ended September&#160;30, 2022 and 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MDQ_50232bf8-5156-4836-9348-f4ba09ab7b97">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2Mjg_737d76a7-380d-4d7c-9768-b5452453c855">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 September 30, 2022, sales to a regional commercial lighting retrofit company accounted for approximately 32% of net sales. For the three months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 19%, 17% and 27% 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 36% of net sales for the same period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 nine months ended September 30, 2022, sales to our primary distributor for the U.S. Navy, a regional commercial lighting retrofit company, and a commercial building system provider, accounted for approximately 13%, 15%, and 10% 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 17% of net sales for the same period. For the nine months ended September 30, 2021, sales to our primary distributor for the U.S. Navy, a U.S. Navy shipbuilder, and a regional commercial lighting retrofit company accounted for approximately 33%, 10% and 17% 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 43% of net sales for the same period.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A regional commercial lighting retrofit company, a commercial building systems provider, and a U.S. Navy mechanical contractor accounted for approximately 25%, 12%, and 12% of net trade accounts receivable, respectively, at September&#160;30, 2022. At December&#160;31, 2021, a distributor to the U.S. Department of Defense accounted for 20% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 36% of our net trade accounts receivable.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;One offshore supplier accounted for approximately 17% and 18%, respectively, of our total expenditures for the three and nine months ended September&#160;30, 2022. For the three and nine months ended September&#160;30, 2021, one offshore supplier accounted for approximately 19% and 30%, respectively, of total expenditures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At September&#160;30, 2022, one offshore supplier accounted for approximately 45% of our trade accounts payable balance. At December&#160;31, 2021, this offshore supplier accounted for approximately 60% of our trade accounts payable balance.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i37f4c9acc3e84d8589b8090148a76c4b_D20220701-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMzU2NA_d70fd594-995e-4c2d-ae2d-c92ebdd9f446"
      unitRef="number">0.32</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i6d1f5375b6c449b683d6f36eef2b9818_D20210701-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMzk2OA_e4323f10-35d5-4e4b-a33e-e9a9532cf54e"
      unitRef="number">0.19</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i5800fccfc6b34922ac202430d4a66a4a_D20210701-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM0OTg2_839ddd1d-9502-4669-850b-9e43d10b6527"
      unitRef="number">0.17</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="if37ada2510094a07a155169b18c4fc52_D20210701-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMzk3NQ_17de25ce-8b15-4497-be23-b17766442ade"
      unitRef="number">0.27</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ie3a7432bc77b4b52ba3fc4e82f9e6617_D20210701-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDE5MQ_896b36f8-0e15-42e1-9fd8-e3e307f162ee"
      unitRef="number">0.36</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ib42f96b7a9ef42958902850aa8da2a07_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDM5MQ_8e7e88cd-1efa-46c7-975c-1fc0d8b9b5fb"
      unitRef="number">0.13</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i8fbc883572984a8db2394a7424b018ce_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTAzMw_7b697132-2a64-497e-ab2a-19ff8df2848b"
      unitRef="number">0.15</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i12126535a0fc4e958a3056dc027bb8e7_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTE4NA_b707e615-4ce8-4ef7-917a-7d9db5788c45"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="idf78687acd0a453da6d6a1491a0d86fe_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDYxOQ_70c7f03b-84bc-4ebe-a9de-6a58213e84c7"
      unitRef="number">0.17</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i7d5bd3f5b1044e9eb88a46e2b6f10b52_D20210101-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDc5Mw_bf70188b-c9b4-4cbf-b32d-5429468abf9a"
      unitRef="number">0.33</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i59b4afaff0e54a2aa40df1997cfefdba_D20210101-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM1NDUw_c84d244f-0693-44ca-ba5c-2c6179fb37cc"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i153fde08482f49c5805c0eac12afbc2a_D20210101-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNDgwMA_296fa0b0-beb1-4fe5-a366-ba399861beeb"
      unitRef="number">0.17</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i46ace4c4778e4e2c98558315008887d0_D20210101-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTAxNg_00a258d1-e303-43a5-8c60-d138cfeb852d"
      unitRef="number">0.43</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i607a49302ca54560b819864785669346_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTM2MA_39f78396-3323-4011-974c-8ab3cca3a892"
      unitRef="number">0.25</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i82f9247d41564f12b19716497b0e894b_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTM2NA_755d2ea0-5a2c-4b06-b358-62d7ad597039"
      unitRef="number">0.12</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ic32feaaefe8f4d1ca318e81d1b95a5ad_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjE5OTAyMzI3OTUwNA_0cc424a6-1e2b-4d1d-a1a1-6398b5e81fac"
      unitRef="number">0.12</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i64dfeecdee55408ba8766b6f20b3409c_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTMxNA_3e7b9284-7855-4fbf-9e02-03ce314d2560"
      unitRef="number">0.20</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i896af6da142744728609e22fd51555e1_D20210701-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQwNA_80cdc68e-40a9-4747-a320-72d1775cb8a8"
      unitRef="number">0.36</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i4d7fb0d31bca438baa1a780ce7f8a55f_D20220701-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5Ng_8ae0646c-35b9-424b-8987-57b7e03d2dc8"
      unitRef="number">0.17</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i4f7a65ca10534d1bacbb2510731f2218_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM2ODUw_2ae99983-b3fe-4319-a7ea-00d588a60e51"
      unitRef="number">0.18</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i40025df90bd74afeb2e9c863a024524b_D20210701-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM1Njk2_c1cf6305-f0ec-42c0-9d1e-2d5e0a02890b"
      unitRef="number">0.19</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i29deb08bfce44cdb8d52f6ec6180beb6_D20210101-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM1NzAw_02ffea58-29b2-4602-a70d-63f260776b00"
      unitRef="number">0.30</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="icb9710d710d94438aaa44c0d3eeea12b_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTgzNA_4db0744b-7a90-4515-9e43-7c731febc631"
      unitRef="number">0.45</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i98875a9fd97e463b943e870204e8a130_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTkzNA_fb1e961c-0fbd-4111-88be-1e3c2eb0a283"
      unitRef="number">0.60</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MTM_a7f02be7-6ac7-4e0a-95c3-3f42f99a214b">&lt;div style="margin-bottom:10pt"&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 pronouncement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 but do not expect any material financial statement impact upon adoption.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:RevenueRecognitionPolicyTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1Nzg_c65ceb69-d342-42da-a4ec-4b3de020e35d">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 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 &lt;/span&gt;&lt;/div&gt;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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MTk_26bb9bf7-79ae-4ec7-bf93-b7e90b3fa529">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.206%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.110%"/&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:9.110%"/&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: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:9.110%"/&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:9.114%"/&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;September 30,&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="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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;2021&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: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;2022&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;2021&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;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="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;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;/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;1,288&#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,522&#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;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;3,397&#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;3,513&#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;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;476&#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,227&#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;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,908&#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,947&#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: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;1,764&#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;2,749&#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 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;5,305&#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;7,460&#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;/table&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:Revenues
      contextRef="ib6c4d1b96db94b7e96e122931182a3d1_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfMy0xLTEtMS03NjkxMA_6d8b873f-a642-42fb-8ec4-ed8c709adb0a"
      unitRef="usd">1288000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ie5bbb9452ad74f3686293bff9ccff1ef_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfMy0zLTEtMS03NjkxMA_0cae41a9-1fe0-443a-814c-152471ed4939"
      unitRef="usd">1522000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i5c999f042b6d45b98aae39612a0c2f6a_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfMy02LTEtMS03NjkxMA_49de8062-2a89-4ff0-9d48-19cf10ed8850"
      unitRef="usd">3397000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if8d831283e96493096d152b5734ddaad_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfMy04LTEtMS03NjkxMA_8196d894-6ae1-4a4a-80a3-544cef85f275"
      unitRef="usd">3513000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ifbbc8e2db54146eb8f8964e46e5cb19c_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNC0xLTEtMS03NjkxMA_a9accb58-2715-442c-99e7-61ffbbb2fd13"
      unitRef="usd">476000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i46a150e0d07a49bf9a0c27bb0e38ed1a_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNC0zLTEtMS03NjkxMA_440613c1-8d40-4ae1-9810-973b7129f807"
      unitRef="usd">1227000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i053f5844d2cb4947b57d374b1c41e110_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNC02LTEtMS03NjkxMA_f806f692-e270-492c-a166-2d5ba85e7b0e"
      unitRef="usd">1908000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i0eefc069d9d842f6a9222615d705a3d4_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNC04LTEtMS03NjkxMA_f53dc944-42fe-4347-b8bb-4086e8deb732"
      unitRef="usd">3947000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNS0xLTEtMS03NjkxMA_95316e00-a810-4b09-b093-1802e582668d"
      unitRef="usd">1764000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNS0zLTEtMS03NjkxMA_2cae98db-e152-41cc-b14d-310e1f403200"
      unitRef="usd">2749000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNS02LTEtMS03NjkxMA_a4760036-e237-47c3-9f78-d283473a9ca2"
      unitRef="usd">5305000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjZkODhhNDkzMzE2MzQ1YTc5NWE3ZWUzMzliOWY2NjEwL3RhYmxlcmFuZ2U6NmQ4OGE0OTMzMTYzNDVhNzk1YTdlZTMzOWI5ZjY2MTBfNS04LTEtMS03NjkxMA_9fcc3397-781c-4d15-b720-27dd03ae84e6"
      unitRef="usd">7460000</us-gaap:Revenues>
    <us-gaap:TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MjA_2d15a4d3-d9c1-444f-a18d-0c6e493e6f93">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our trade accounts receivable consists of amounts billed to and currently due from customers. Our customers are 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 a third-party account receivable insurance program with a very 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 credit-worthiness ratings and metrics that significantly assist us in evaluating the credit worthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of account receivables 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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 for major 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="i4068fc9bca6746ad9993ef75d567d291_D20220701-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTA0NTM_07134af8-d3d9-4191-b179-fb960efa64fb"
      unitRef="number">0.01</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2f5f0d28ce19493dbd2e4fa1e79d641c_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTA1NDk_a2cc379c-114e-494c-9d9a-80f214803d04"
      unitRef="number">0.01</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1ODg_3b1c166c-e2aa-4cbc-b4d2-5712e3fd447b">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1ODA_e69b641f-8ba3-40fa-96b2-c23be84fff69">&lt;div style="margin-bottom:10pt"&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 presents a reconciliation of basic and diluted loss per share computations (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.506%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.110%"/&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:9.110%"/&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:9.110%"/&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:9.113%"/&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;September 30,&lt;/span&gt;&lt;/td&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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;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;2022&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;2021&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;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="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;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;(2,662)&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,140)&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;(7,969)&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;(5,255)&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: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="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #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:3pt double #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;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="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="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;Basic and diluted 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;9,190&#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;5,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="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;7,608&#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,309&#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;td colspan="3" style="display:none"/&gt;&lt;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="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfMy0xLTEtMS03NjkxMA_51cd31c1-0ff6-47e6-85a8-b1b76b5562c7"
      unitRef="usd">-2662000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfMy0zLTEtMS03NjkxMA_a910ad03-75ca-43ad-971b-2245c4ada1c8"
      unitRef="usd">-1140000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfMy01LTEtMS03NjkxMA_94fce938-bb35-4972-a488-1ea453814bbb"
      unitRef="usd">-7969000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfMy03LTEtMS03NjkxMA_c891d308-1bb2-4e28-b101-59f305bb1006"
      unitRef="usd">-5255000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi0xLTEtMS03NjkxMA_02951745-2058-431c-ad94-487ac7afe32b"
      unitRef="shares">9190000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi0xLTEtMS03NjkxMA_66d7a635-cba0-4944-b614-25a015d465fa"
      unitRef="shares">9190000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi0zLTEtMS03NjkxMA_3c4087a7-fce9-4884-acce-a549ebe07a2d"
      unitRef="shares">5086000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi0zLTEtMS03NjkxMA_60206e94-fe83-409b-82fd-aec84e273d2e"
      unitRef="shares">5086000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi01LTEtMS03NjkxMA_8f5c7a82-d68b-4e4a-acd3-808c95685dfc"
      unitRef="shares">7608000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi01LTEtMS03NjkxMA_90e4e72d-f2e7-4c3e-bd1c-dc07dd76f52b"
      unitRef="shares">7608000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi03LTEtMS03NjkxMA_26c88f8c-f2f9-4bdf-88ea-c28c194bdc00"
      unitRef="shares">4309000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjUyNzliZjRlZTkxZjRjNjM4MjQ0ZjAwMWNmZTM2MWY4L3RhYmxlcmFuZ2U6NTI3OWJmNGVlOTFmNGM2MzgyNDRmMDAxY2ZlMzYxZjhfNi03LTEtMS03NjkxMA_711c4540-6adc-4796-b022-9d42a49a286c"
      unitRef="shares">4309000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i7d95b9eb53cd427c85ff41ec3ef9c73b_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTE2Nzg_8f3e3372-b77a-4344-a771-a8fbde575c3d"
      unitRef="shares">220000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="icbf888d313d64174882c185ba203e2b2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTE2ODU_8c209460-8d9d-4adb-a1a5-37ed179e793d"
      unitRef="shares">175000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i1abbb7b455da4f6ea40a3c72ba069b13_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTE5ODU_5ee0f3b6-8ae3-4aa5-a80d-4399574da45e"
      unitRef="shares">41000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i549805fad92b42eca5ce18f05b2411ec_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTE5OTM_fea04cbd-3d03-41ef-bb67-794634b672f9"
      unitRef="shares">11000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i94743c8c339a4a698bd9f322be49c248_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTIwMDA_5ebba96c-58e1-432d-aa91-ce58ddefffa9"
      unitRef="shares">175000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i12f89771e5024f029d3dc49537f86a70_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTIyOTE_cdb715b0-f873-4288-bafa-9ece9eeaca71"
      unitRef="shares">201000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i8f74a9e581e94e3db1059280cbfe8c07_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTIyOTg_a7beabe2-7e99-4b5b-ad49-e92d674d0862"
      unitRef="shares">175000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ib89d3b33574f4f60bbf58f4f5aa84bf3_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI1OTg_9651d4a6-a530-4cf2-83ee-836a83a5a966"
      unitRef="shares">60000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i15c650a4eaa14a1fa20d6d3d662b41b9_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI2MDY_7feae269-de6c-4716-824e-db858285251c"
      unitRef="shares">56000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="idc8b649a3ca24d27aa950369a45b0f50_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI2MTM_a3729e9b-c26d-40e6-bb5a-8936b23953bd"
      unitRef="shares">289000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:StandardProductWarrantyPolicy
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1NzM_3f823ba7-fe29-49da-b9eb-53fdfc7df7cc">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We warrant our commercial and MMM LED products and controls for periods generally ranging from &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_3aa032ef-d1be-49b9-9d46-a1940c7bf3fc"&gt;&lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODA_c24d493e-2d1f-4b2e-a4a3-7b64303ed106"&gt;five&lt;/span&gt;&lt;/span&gt; to ten 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;</us-gaap:StandardProductWarrantyPolicy>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i9d2ec8f43f314ebcae8cfdecdf9fde7d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODY_4622fe12-9247-4b1d-8f08-c368afe746b8">P10Y</efoi:StandardProductWarrantyNumberofYears>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i0ef25f5a819d48a08bda5c3f3fbb956b_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTI4ODY_7d33b8c8-c1d3-4e06-b897-6f40562d9840">P10Y</efoi:StandardProductWarrantyNumberofYears>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA2MDc_a39a9ed4-0748-49ca-92cd-9f7d050380e6">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.806%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.110%"/&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:9.110%"/&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:9.110%"/&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:9.114%"/&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;September 30,&lt;/span&gt;&lt;/td&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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;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;2022&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;2021&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;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;315&#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;239&#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;295&#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;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;/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, net of changes in inventory reserves for replacements&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;(23)&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;10&#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;(17)&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;49&#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;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;(57)&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;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;(29)&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;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;/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;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="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;(13)&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)&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;(52)&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;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;242&#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="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;242&#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;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i682c94a884c54808853513b639aaddba_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMi0xLTEtMS03NjkxMA_5615b28d-b52e-48a3-b456-88fa7d00affd"
      unitRef="usd">315000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i5be37111720b4e3db2683efa15ba1627_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMi0zLTEtMS03NjkxMA_970d5341-ef88-4d71-8fb3-ef851875db8e"
      unitRef="usd">239000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMi01LTEtMS03NjkxMA_fb238eff-985f-4613-b07a-90cce432f497"
      unitRef="usd">295000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i665a74c29f70404086fd8174e737d9ae_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMi03LTEtMS03NjkxMA_ea056cdf-3bb2-41be-8a52-d05d1c75b777"
      unitRef="usd">227000</us-gaap:ProductWarrantyAccrual>
    <efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMy0xLTEtMS03NjkxMA_85cfe912-feb3-4bc1-a53a-c6f18e4eb79e"
      unitRef="usd">-23000</efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements>
    <efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMy0zLTEtMS03NjkxMA_c3ebf1fc-11f6-4d00-96bd-4559be7d4469"
      unitRef="usd">10000</efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements>
    <efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMy01LTEtMS03NjkxMA_b79ccc6a-3b0d-4df7-a0af-d0a5e0502dcf"
      unitRef="usd">-17000</efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements>
    <efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfMy03LTEtMS03NjkxMA_55dab6d6-cc90-4b8a-aa28-64dd4623b7cb"
      unitRef="usd">49000</efoi:StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNC0xLTEtMS03NjkxMA_c9c9b390-d0b6-4dd2-b85e-66c6f3f298ec"
      unitRef="usd">-57000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNC0zLTEtMS03NjkxMA_87c343eb-9cb9-4dad-a759-365e5872579c"
      unitRef="usd">4000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNC01LTEtMS03NjkxMA_53a4a139-6955-4997-a215-77d94cffafe5"
      unitRef="usd">-29000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNC03LTEtMS03NjkxMA_b1aa8e8d-3426-4fa7-9442-034941666de3"
      unitRef="usd">16000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNS0xLTEtMS03NjkxMA_dc99a37d-0ca1-4983-89fa-4571908848f8"
      unitRef="usd">7000</efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements>
    <efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNS0zLTEtMS03NjkxMA_319ae5e0-4b7b-4707-b16d-37a0ba3e8dc2"
      unitRef="usd">-13000</efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements>
    <efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNS01LTEtMS03NjkxMA_195af5c1-1d44-4c7f-a763-520e1907a0f2"
      unitRef="usd">-7000</efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements>
    <efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNS03LTEtMS03NjkxMA_1c3cd983-7af4-4447-94d1-fd74d96864f9"
      unitRef="usd">-52000</efoi:StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements>
    <us-gaap:ProductWarrantyAccrual
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNi0xLTEtMS03NjkxMA_a3a04a0b-b080-4df1-adb6-e1f4aee0863a"
      unitRef="usd">242000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNi0zLTEtMS03NjkxMA_0a073eb1-8b32-445e-8722-07923fefbcda"
      unitRef="usd">240000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNi01LTEtMS03NjkxMA_fa788d9f-31f3-44d7-a51e-f71a92728561"
      unitRef="usd">242000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RhYmxlOjM3MDMzNDQ2M2RiZTRhYTJhYmU1YjU1Njg0NTQ0YzFiL3RhYmxlcmFuZ2U6MzcwMzM0NDYzZGJlNGFhMmFiZTViNTU2ODQ1NDRjMWJfNi03LTEtMS03NjkxMA_377f2f7c-65a1-40df-834c-aa677bbf8428"
      unitRef="usd">240000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMjA1NjM_5f2f9391-f64a-4897-8cbd-d765b49ce59a">&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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;June 2022 Private Placement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2022, we completed a private placement (the &#x201c;June 2022 Private Placement&#x201d;) with certain institutional investors for the sale of 1,313,462 shares of our common stock at a purchase price of $1.30 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#x201c;June 2022 Pre-Funded Warrants&#x201d;) to purchase 1,378,848 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the June 2022 Pre-Funded Warrants, the &#x201c;June 2022 Warrants&#x201d;) to purchase up to an aggregate of 2,692,310 shares of common stock at an exercise price of $1.30 per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $252&#160;thousand, plus $35&#160;thousand in expenses, and we also paid legal, accounting and other fees of $47&#160;thousand. Total offering costs of $334&#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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $3.2 million. We determined the exercise price of the June 2022 Pre-Funded Warrants to be nominal and, as such, have considered the 1,378,848 shares underlying them to be outstanding effective June 7, 2022, for purposes of calculating net loss per share. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In July 2022, all of the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of 2,692,310 shares remained outstanding, with a weighted average exercise price of $1.30 per share. The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $3.5 million in the aggregate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;December 2021 Private Placement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2021, we completed a private placement (the &#x201c;December 2021 Private Placement&#x201d;) with certain institutional investors for the sale of 1,193,185 shares of our common stock at a purchase price of $3.52 per share. We also sold to the same institutional investors (i) pre-funded warrants (the &#x201c;December 2021 Pre-Funded Warrants&#x201d;) to purchase 85,228 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants (collectively with the December 2021 Pre-Funded Warrants, the &#x201c;December 2021 Warrants&#x201d;) to purchase up to an aggregate of 1,278,413 shares of common stock at an exercise price of $3.52 per share. In connection with the December 2021 Private Placement, we paid the placement agent commissions of $360&#160;thousand, plus $42&#160;thousand in expenses, and we also paid legal, accounting and other fees of $97&#160;thousand. Total offering costs of $499&#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, 2021. Net proceeds to us from the December 2021 Private Placement were approximately $4.0 million. We determined the exercise price of the December 2021 Pre-Funded Warrants to be nominal and, as such, have considered the 85,228 shares underlying them to be outstanding effective December 16, 2021, for purposes of calculating net loss per share. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2022, all of the December 2021 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of 1,278,413 shares remained outstanding, with an exercise price of $3.52 per share. The exercise of the remaining December 2021 Warrants outstanding could provide us with cash proceeds of up to $4.5 million in the aggregate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;June 2021 Equity Offering&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2021, we completed a registered direct offering of 990,100 shares of our common stock to certain institutional investors, at a purchase price of $5.05 per share (the &#x201c;June 2021 Equity Offering&#x201d;). We paid the placement agent commissions of $400 thousand, plus $51 thousand in expenses, in connection with the June 2021 Equity Offering, and we also paid legal and other fees of $18&#160;thousand. Total offering costs of $469&#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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $4.5 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;January 2020 Equity Offering&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2020, we completed a registered direct offering 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 (the &#x201c;Investor Warrants&#x201d;) in a concurrent private placement (together with the concurrent registered direct offering, the &#x201c;January 2020 Equity Offering&#x201d;) for a purchase price of $0.625 per warrant. 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 (together with the Investor Warrants, the &#x201c;January 2020 Warrants&#x201d;).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 September&#160;30, 2022, January 2020 Warrants to purchase an aggregate of 229,414 shares remain outstanding with a weighted average exercise price of $3.67 per share. The exercise of these warrants could provide us with cash proceeds of up to $0.8 million in the aggregate. During the nine months ended September 30, 2022, none of these warrants were exercised. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 September&#160;30, 2021, January 2020 Warrants to purchase an aggregate of 310,860 shares remained outstanding with a weighted average exercise price of $3.59 per share. During the nine months ended September 30, 2021, 156,446 January 2020 Warrants were exercised resulting in total proceeds of $527&#160;thousand.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 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 style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQwNDc_1b73b551-ee21-4391-a220-60c9dcdc492b"
      unitRef="shares">1313462</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="ib6093e256b84497da804afffdc20ab61_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQxMDA_f2f3d06c-77f8-44ac-a07b-913a16c1c076"
      unitRef="usdPerShare">1.30</us-gaap:SaleOfStockPricePerShare>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQyMzc_b89bff43-350e-46b5-b4c5-c55a8fdea448"
      unitRef="shares">1378848</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQyODc_377d8e46-f153-4e78-97d4-451669ca2b37"
      unitRef="usdPerShare">0.0001</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ0MzI_88b7c47f-7261-4d0b-b92a-316bdada04f7"
      unitRef="shares">2692310</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ0ODI_a6593163-2265-45e7-9e16-e0a2d0199df4"
      unitRef="usdPerShare">1.30</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ1OTE_c79454a2-c4cf-4493-8af7-6e99d723d138"
      unitRef="usd">252000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ2MDA_61f943b2-0447-42ee-9a1c-9307a5fff010"
      unitRef="usd">35000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ2Njk_6910677c-2cb5-4e7d-a491-ee1050fb22c0"
      unitRef="usd">47000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ2OTc_47d40fd3-dc07-4488-a36d-bfe9b4b0fa39"
      unitRef="usd">334000</us-gaap:PaymentsOfStockIssuanceCosts>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTQ5Mjk_762dce1a-5291-44b4-b753-9a4eaf730ea5"
      unitRef="usd">3200000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTUwNTE_b89bff43-350e-46b5-b4c5-c55a8fdea448"
      unitRef="shares">1378848</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="ib6093e256b84497da804afffdc20ab61_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfNTQ5NzU1ODM2MTAw_40cdfaba-422c-498a-aab7-0b706e51f755"
      unitRef="shares">2692310</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ib6093e256b84497da804afffdc20ab61_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTUyOTk_b6935464-1186-409c-952b-1752cf63faa9"
      unitRef="usdPerShare">1.30</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:EstimatedProceedsFromIssuanceOfWarrants
      contextRef="icbe2c1b605284d9ea336fc4b0c5b94b6_D20220701-20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU0OTA_2ddf4016-2e7e-4d2d-abad-7d18c0a64551"
      unitRef="usd">3500000</efoi:EstimatedProceedsFromIssuanceOfWarrants>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU2ODc_09c512ba-a810-4675-a0b2-5bf3014aa789"
      unitRef="shares">1193185</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i9ce48cbac2a74e9d94e19ade81ea2ba2_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU3NDA_bf802b5e-45e1-44b6-81f3-5a2a0f2e4dea"
      unitRef="usdPerShare">3.52</us-gaap:SaleOfStockPricePerShare>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i8ddadf8727d94cc6b7723121484c1cd6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU4ODE_0ddbe389-3fa1-49c1-9383-b371a1ea1c57"
      unitRef="shares">85228</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i8ddadf8727d94cc6b7723121484c1cd6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTU5MzE_9e931271-66cf-4634-a9ac-ffb14ad3e5b4"
      unitRef="usdPerShare">0.0001</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYwODQ_f9957170-a9fc-456e-b307-eea0d6499822"
      unitRef="shares">1278413</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYxMzQ_26146e18-3f69-4552-81fb-4ca7bf24d801"
      unitRef="usdPerShare">3.52</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYyNDc_865e87c5-0b7a-4891-ade2-b1da598d50d9"
      unitRef="usd">360000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYyNTY_9ae57c64-ab1b-4835-82f4-7fb2258a8a7b"
      unitRef="usd">42000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYzMjU_0919f815-bead-4e24-969c-1ad66bd6aa4f"
      unitRef="usd">97000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTYzNTM_d2a22f4d-2ad3-4595-840d-e71e12aacd13"
      unitRef="usd">499000</us-gaap:PaymentsOfStockIssuanceCosts>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTY1ODk_399e7735-23f7-42e1-a08d-dea0c05ff5d0"
      unitRef="usd">4000000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i748bb2380fea4959930dec8b4d178b77_D20211216-20211216"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTY3MTU_40409803-3509-4b5a-b12e-70afca67f8dc"
      unitRef="shares">85228</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i767ac6894c76456c8094aa95c522cc82_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTY5NzY_0cb42817-2ec3-4463-bcd7-17242d5658d4"
      unitRef="shares">1278413</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i767ac6894c76456c8094aa95c522cc82_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTcwMzQ_df84d91c-df5b-43d8-b11d-00e84ada4010"
      unitRef="usdPerShare">3.52</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:EstimatedProceedsFromIssuanceOfWarrants
      contextRef="i81f0616158c84d3fb1b6440205bf4b1f_D20220701-20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTcxNTg_c0a60090-72f0-4b4c-a7a4-fd138da6f828"
      unitRef="usd">4500000</efoi:EstimatedProceedsFromIssuanceOfWarrants>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTcyNjQ_281337d8-6943-4320-a915-e22fd24ddc16"
      unitRef="shares">990100</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i0faf6b8b75e64d60b8cca4f20ea1033d_I20210630"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTczNTM_871e5d86-a65f-410b-95ad-81ba34f6d481"
      unitRef="usdPerShare">5.05</us-gaap:SaleOfStockPricePerShare>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc0NDQ_be69806d-0c0a-4b6e-8964-20111804e632"
      unitRef="usd">400000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc0NTM_c6eb6022-2291-4d59-9d0d-a7fb60236e37"
      unitRef="usd">51000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="ie0406c176cd64530aa241398cd71c792_D20210601-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc1NjA_12331ab7-6452-4c27-b6a3-117a829e95b2"
      unitRef="usd">18000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i12d643b8880e4367bc65f29dd3283f8b_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc1ODg_b60c8499-82a5-4cdd-8d1f-1b8f9c9150e9"
      unitRef="usd">469000</us-gaap:PaymentsOfStockIssuanceCosts>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc4MTg_657825aa-f5f7-422b-9072-c09e424174a9"
      unitRef="usd">4500000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTc5MTM_c5ee9f9a-080d-4220-9d83-6034254ddf74"
      unitRef="shares">688360</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i75c44893e522482d9da770d544c0738f_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTgwMDI_860ce0fc-d93e-4b97-8677-feff7e904b7c"
      unitRef="usdPerShare">3.37</us-gaap:SaleOfStockPricePerShare>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i75c44893e522482d9da770d544c0738f_I20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTgwOTQ_86174388-5a91-4250-a5ab-93e3f82c76a2"
      unitRef="shares">688360</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="if6df7ef067004660ab3ca010df7407c3_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTgxNDQ_243ba911-df0c-4f6a-b851-d20b71969036"
      unitRef="usdPerShare">3.37</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare
      contextRef="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTgzMzU_d78276ba-7620-4b31-903b-119cd8171c42"
      unitRef="usdPerShare">0.625</efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg0MjQ_a6715f94-7ef1-4a49-b855-d472e77652f3"
      unitRef="shares">48185</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg0NzQ_5ad13216-d38d-48b1-b735-52f8e023e59d"
      unitRef="usdPerShare">4.99</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg2MTU_084dd7d7-40a2-4905-8e5a-570944b4fa76"
      unitRef="shares">229414</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i11a6b7ac29a64570a16688c65c0b2098_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg2ODY_7d70fb58-ee6c-4225-8845-d103b9987540"
      unitRef="usdPerShare">3.67</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:EstimatedProceedsFromIssuanceOfWarrants
      contextRef="ife2256486c774b86ada936065734d99d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg3NzY_85637264-8790-4427-901c-adc65b6bbeda"
      unitRef="usd">800000</efoi:EstimatedProceedsFromIssuanceOfWarrants>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="ife2256486c774b86ada936065734d99d_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg4MTI_64823742-5811-489e-860b-f6930b3bf724"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg5MDk_a7ffc5bb-17b3-47c8-ba1e-0e3586fd23d6"
      unitRef="shares">310860</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i7c5ac06956994272be453a5b5ee648f3_I20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTg5ODM_d8f97fbd-42c2-4cc6-884c-380a4ac1c2ab"
      unitRef="usdPerShare">3.59</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="i06883d1c8c934bbb8b0580de82e8da76_D20210101-20210930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTkwMTI_fe91fa20-fbd4-4c81-a511-d2dde7f22ee0"
      unitRef="shares">156446</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180MC9mcmFnOmE4MmIxMmQxMjE2NjQ3ZDlhYTVmNDc1ZmExNjhjNDcxL3RleHRyZWdpb246YTgyYjEyZDEyMTY2NDdkOWFhNWY0NzVmYTE2OGM0NzFfMTkwODM_9fff75e3-f16d-4211-ad76-cd5ee38586ca"
      unitRef="usd">527000</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTkyOQ_8825c641-2b60-4686-955b-fe8843a20bec">RESTRUCTURING&lt;div style="margin-bottom:10pt;margin-top:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were no restructuring credits or expense recorded for the three and nine months ended September&#160;30, 2022. For the three months ended September 30, 2021, we recorded nominal net restructuring expense and for the nine months ended September 30, 2021, we recorded a net restructuring credit of approximately $21&#160;thousand, 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 2021 Annual Report.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The lease obligation on our former New York, New York office was settled as of June 30, 2021. Our restructuring liabilities consisted of estimated ongoing costs related to long-term operating lease obligations, which the Company exited. The recorded value of the lease obligation was 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 were measured using the credit adjusted, risk free rate that was used to measure the restructuring liabilities initially.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:81.632%"/&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:16.168%"/&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="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;/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="3" style="display:none"/&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;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;/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 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="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;(11)&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:700;line-height:100%"&gt;Balance at September 30, 2021&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;&#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;/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:10pt"&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 began to tailor our operating expenses to be more in line with our expected sales volumes. Throughout 2022, we have continued to aggressively pursue cost reduction activities, including reducing staffing levels, inventory levels and our real estate footprint, but sales volume have trailed these ongoing cost control efforts. 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 September&#160;30, 2022. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Throughout 2021 and 2022, we have continued to evaluate and assess strategic options as we seek to achieve profitability. We plan to continue to develop advanced lighting and lighting control technologies and introduce impactful new products surrounding EnFocus&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;TM&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;, our patented, breakthrough powerline control platform. We also continue to believe our proprietary 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; emergency backup lighting system addresses a market need and will continue to help drive commercial sales for us as it has been well received in the market.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We plan to achieve profitability by growing our sales, primarily through existing and new commercial and industrial lighting and control systems and by continuing to refine and execute on our multi-channel sales strategy that targets key verticals, such as government, healthcare, eldercare, education, and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships, as well as our emerging consumer market focus.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As described in Note 9, &#x201c;Stockholders&#x2019; Equity,&#x201d; we also raised approximately $3.2 million of net proceeds upon the issuance of common stock and June 2022 Warrants in connection with the June 2022 Private Placement, $4.0 million of net proceeds upon the issuance of common stock and December 2021 Warrants in connection with the December 2021 Private Placement, and approximately $4.5 million of net proceeds upon the issuance of common stock in connection with the June 2021 Equity Offering. As described in Note 7, &#x201c;Debt&#x201d;, in September 2022, April 2022 and April 2021, we obtained net proceeds from bridge financing of approximately $0.5 million, $1.8 million and $1.5 million, respectively. Also in April 2021, we expanded the borrowing capacity on one of our revolving credit facilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 taken throughout 2021 and continuing into 2022, as well as the June 2022 Private Placement, the December 2021 Private Placement and the June 2021 Equity Offering that strengthened our balance sheet, our credit facility capacity increase and bridge financings in September 2022, April 2022 and April 2021, and the funds we expect to receive related to the Employee Retention Tax Credit (&#x201c;ERTC&#x201d;; see Note 11, &#x201c;Other Income&#x201d; for details), were all 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 willingness of our suppliers to continue partnering with us, the corresponding time and inventory management required to ramp up sales from new products, markets, and customers into this sales cycle, the timing of introductions of additional new products, significant competition, potential sales volatility given our customer concentration, numerous interruptions and cost increases in the supply chain globally, and the long-term economic impact from the COVID-19 pandemic that has significantly diminished the interest and activities for our customers&#x2019; lighting retrofit projects until occupancy returns to more normal levels, among other factors.&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;Additionally, global supply chain and logistics constraints are impacting our inventory purchasing strategy, as we seek to manage both shortages of available components and longer lead times in obtaining components while balancing the development and implementation of an inventory reduction plan. Disruptions in global logistics networks are also impacting our lead times and ability to efficiently and cost-effectively transport products from our third-party suppliers to our facility. 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 style="padding-left:36pt;text-indent:-18pt"&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:14.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;text-indent:-18pt"&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:14.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="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"&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:14.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&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:36pt;text-indent:-18pt"&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:14.5pt"&gt;additional equity financing may not be available to us on satisfactory terms, particularly in light of the current price of our common stock, and any equity we are able to issue could lead to substantial 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:36pt;text-indent:-18pt"&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:14.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="margin-bottom:10pt;padding-left:36pt;text-indent:-18pt"&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:14.5pt"&gt;the current environment in the capital markets and volatile interest rates, 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="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Additionally, if we are unable to find a permanent chief financial officer, it may be more difficult to obtain additional financing on satisfactory terms or at all. 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 style="margin-bottom:10pt"&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 ensure adequate 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, could provide us with an ability to finance our operations through the next twelve months and may mitigate the substantial doubt about our ability to continue as a going concern.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On August 23, 2022, we received a written notice, (the &#x201c;Notice&#x201d;), from the Listing Qualifications staff (the &#x201c;Staff&#x201d;) of The Nasdaq Stock Market (&#x201c;Nasdaq&#x201d;) that the Company is not in compliance with the requirement to maintain a minimum closing bid price of $1.00 per share, as set forth in Nasdaq Listing Rule 5550(a)(2) (the &#x201c;Bid Price Requirement&#x201d;) because the closing bid price of our common stock was below $1.00 per share for 30 consecutive business days. The Notice does not impact the listing of our common stock on The Nasdaq Capital Market at this time. The Notice provided that, in accordance with Nasdaq Listing Rule 5810(c)(3)(A), the Company has a period of 180 calendar days from the date of the Notice, or until February 20, 2023, to regain compliance with the Bid Price Requirement. During this period, our common stock will continue to trade on The Nasdaq Capital Market. However, there can be no assurance that the Company will be able to regain compliance with the rule or will otherwise be in compliance with other Nasdaq listing criteria. If we are unable to regain compliance, Nasdaq may make a determination to delist our common stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On August 17, 2020, we received a letter from the Staff 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. 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. In accordance with one part of the plan submitted to the Staff, we successfully modified our outstanding January 2020 Warrants and in December 2020, we reclassified $1.4&#160;million from warrant liability into equity. 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 December 31, 2020, our stockholders&#x2019; equity was $4,255,000, satisfying the Minimum Stockholders&#x2019; Equity Rule. At December&#160;31, 2021, our stockholders&#x2019; equity was $6,209,000 and at September&#160;30, 2022, our stockholders&#x2019; equity was $1,526,000.&lt;/span&gt;&lt;/div&gt;</us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock>
    <us-gaap:RestructuringCosts
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfNTQ5NzU1ODI0MDcx_c940c9dd-becd-40ac-9fcb-5ca79a14f22b"
      unitRef="usd">-21000</us-gaap:RestructuringCosts>
    <us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTkzMQ_59d22c4e-0ec1-4a49-a368-f1e829d4e255">&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:81.632%"/&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:16.168%"/&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="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;/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="3" style="display:none"/&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;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;/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 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="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;(11)&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:700;line-height:100%"&gt;Balance at September 30, 2021&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;&#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;/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;</us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock>
    <us-gaap:RestructuringReserve
      contextRef="ia1df6a9ccabb4f79b31bd886a2658fa8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RhYmxlOjhjMGRlM2RmYzgwZTQzMWNiZTE2ODJhOTllODI2YmU3L3RhYmxlcmFuZ2U6OGMwZGUzZGZjODBlNDMxY2JlMTY4MmE5OWU4MjZiZTdfMS0zLTEtMS03NjkxMA_55fd2a43-3d9f-420a-8243-7924ddf7d71b"
      unitRef="usd">11000</us-gaap:RestructuringReserve>
    <us-gaap:PaymentsForRestructuring
      contextRef="i9fd2512855984eebaa00786549fbb063_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RhYmxlOjhjMGRlM2RmYzgwZTQzMWNiZTE2ODJhOTllODI2YmU3L3RhYmxlcmFuZ2U6OGMwZGUzZGZjODBlNDMxY2JlMTY4MmE5OWU4MjZiZTdfMy0zLTEtMS03NjkxMA_e5d49577-5ac9-40fb-9adf-8316183c9e61"
      unitRef="usd">11000</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserve
      contextRef="i68d6701437424d0099a8bc50df3a69c3_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RhYmxlOjhjMGRlM2RmYzgwZTQzMWNiZTE2ODJhOTllODI2YmU3L3RhYmxlcmFuZ2U6OGMwZGUzZGZjODBlNDMxY2JlMTY4MmE5OWU4MjZiZTdfNC0zLTEtMS03NjkxMA_102d7b6f-8cee-4daf-b1b8-748b66a19258"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzE3Ng_762dce1a-5291-44b4-b753-9a4eaf730ea5"
      unitRef="usd">3200000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzMwNA_399e7735-23f7-42e1-a08d-dea0c05ff5d0"
      unitRef="usd">4000000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzQ1OA_657825aa-f5f7-422b-9072-c09e424174a9"
      unitRef="usd">4500000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction
      contextRef="if962f91bd3a94df6aae226599884db1d_D20220901-20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfNTQ5NzU1ODI4Mjc3_944643da-53c9-417d-bd53-c92226b5f91d"
      unitRef="usd">500000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="i7bb635b2936646fd95b0eba62bd3b2a0_D20220401-20220430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzY4Nw_dc3dca20-3b37-41ae-824e-af9223d6df68"
      unitRef="usd">1800000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="ib742238870fe478a8e2dec1d4e5d846d_D20210401-20210430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzY5NA_473b5359-39a4-47ef-9058-a0152370a289"
      unitRef="usd">1500000</us-gaap:ProceedsFromIssuanceOfDebt>
    <efoi:CommonStockClosingBidPriceThreshold
      contextRef="i8d5a9099f5794e149564f34403f84182_I20220823"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMzg0ODI5MDcxMTYyOQ_b3e2b254-a12a-47fb-b65d-d6e5dba3b30d"
      unitRef="usdPerShare">1.00</efoi:CommonStockClosingBidPriceThreshold>
    <efoi:NumberOfConsecutiveDaysForBidPriceBelowThreshold
      contextRef="i8d5a9099f5794e149564f34403f84182_I20220823"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfMTIwOTQ2Mjc5MjA2ODk_df300c3b-7957-4395-aece-5e581d33bbcf"
      unitRef="d">30</efoi:NumberOfConsecutiveDaysForBidPriceBelowThreshold>
    <us-gaap:StockholdersEquity
      contextRef="ic7790ed3f19d47b4b19ed5db52c91404_I20200630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTE0MQ_68c3b20b-6052-428d-955c-601c6e8fc6de"
      unitRef="usd">1714000</us-gaap:StockholdersEquity>
    <efoi:AdjustmentsToAdditionalPaidInCapitalWarrantReclassified
      contextRef="i4205067b75474f23a9af870a7acc0c11_D20201201-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTQ5Nw_4b7e31ff-59dd-4df6-851b-76a364f049d8"
      unitRef="usd">1400000</efoi:AdjustmentsToAdditionalPaidInCapitalWarrantReclassified>
    <us-gaap:StockholdersEquity
      contextRef="i665a74c29f70404086fd8174e737d9ae_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTc4Ng_6d5c8ec6-3829-444f-aad2-361b12c04663"
      unitRef="usd">4255000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTg3Ng_8ff92efc-0fc1-43de-b20d-e425eaca27e6"
      unitRef="usd">6209000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180Ni9mcmFnOmUwZTg3NWNlMzBhYTQ4MDZiYmY2NzlmYjdiNmMzNzc5L3RleHRyZWdpb246ZTBlODc1Y2UzMGFhNDgwNmJiZjY3OWZiN2I2YzM3NzlfOTkxOQ_23f3a706-a97b-4189-839e-065c79f96201"
      unitRef="usd">1526000</us-gaap:StockholdersEquity>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RleHRyZWdpb246NzExMjczMjhmMzdiNDhkYmFiNDJkNGNkMTgyZmE5YTZfOTI3_a071dc8c-24cb-467a-9778-8ed0e9f709a9">INVENTORIES&lt;div style="margin-bottom:10pt"&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.824%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.062%"/&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.064%"/&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;September 30,&lt;br/&gt;2022&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;2021&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;3,584&#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,882&#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;5,231&#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,034&#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,659)&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,050)&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;6,156&#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;7,866&#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:10pt"&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:48.299%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.062%"/&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.062%"/&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:11.062%"/&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:11.065%"/&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;September 30,&lt;/span&gt;&lt;/td&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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;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;2022&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;2021&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,792)&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,956)&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,050)&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,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;/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;(241)&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;34&#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;(442)&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;(64)&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;21&#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;36&#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;278&#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;72&#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;Write-off for disposed inventory&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;353&#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;&#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;555&#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;&#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 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:#cceeff;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:#cceeff;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,659)&lt;/span&gt;&lt;/td&gt;&lt;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"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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"&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;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,886)&lt;/span&gt;&lt;/td&gt;&lt;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"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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"&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;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,659)&lt;/span&gt;&lt;/td&gt;&lt;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"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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"&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;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,886)&lt;/span&gt;&lt;/td&gt;&lt;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"/&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:112%"&gt;As part of our expense reduction initiatives, we significantly decreased our warehouse space beginning in the third quarter of 2022. In connection with the space reduction, in the second quarter of 2022, we began disposing of a substantial portion of our excess and obsolete commercial finished goods inventory that was highly reserved, which effort continued into the third quarter of 2022. As of September 30, 2022, approximately $563&#160;thousand, on a gross value basis, of such inventory had been disposed of. Additional inventory management efforts are expected to continue in the fourth quarter of 2022.&lt;/span&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RleHRyZWdpb246NzExMjczMjhmMzdiNDhkYmFiNDJkNGNkMTgyZmE5YTZfOTMw_0d4acfda-12e5-455b-b9ba-4e113b0dfb9f">&lt;div style="margin-bottom:10pt"&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.824%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.062%"/&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.064%"/&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;September 30,&lt;br/&gt;2022&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;2021&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;3,584&#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,882&#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;5,231&#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,034&#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,659)&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,050)&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;6,156&#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;7,866&#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:10pt"&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:48.299%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.062%"/&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.062%"/&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:11.062%"/&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:11.065%"/&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;September 30,&lt;/span&gt;&lt;/td&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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;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;2022&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;2021&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,792)&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,956)&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,050)&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,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;/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;(241)&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;34&#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;(442)&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;(64)&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;21&#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;36&#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;278&#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;72&#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;Write-off for disposed inventory&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;353&#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;&#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;555&#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;&#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 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:#cceeff;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:#cceeff;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,659)&lt;/span&gt;&lt;/td&gt;&lt;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"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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"&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;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,886)&lt;/span&gt;&lt;/td&gt;&lt;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"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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"&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;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,659)&lt;/span&gt;&lt;/td&gt;&lt;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"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;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"&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;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,886)&lt;/span&gt;&lt;/td&gt;&lt;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"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterials
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMS0xLTEtMS03NjkxMA_4f22008c-1482-4515-b4d7-a22c6b241013"
      unitRef="usd">3584000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMS0zLTEtMS03NjkxMA_cbc32801-8347-40cb-ac6a-88d2d2b5ea6e"
      unitRef="usd">3882000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryFinishedGoods
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMi0xLTEtMS03NjkxMA_dbac86e3-b798-4f82-99ed-8e78337c6fbc"
      unitRef="usd">5231000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMi0zLTEtMS03NjkxMA_1cfb74ce-53a5-4c56-b18d-00d040d3934f"
      unitRef="usd">7034000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryValuationReserves
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMy0xLTEtMS03NjkxMA_20f9c227-bc41-484f-a024-b39889852c2d"
      unitRef="usd">2659000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfMy0zLTEtMS03NjkxMA_ce7565ae-8d02-42da-8c16-0366a7c475fe"
      unitRef="usd">3050000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryNet
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfNC0xLTEtMS03NjkxMA_3cb0c16b-3cfb-4837-8630-f18eafc3d2ed"
      unitRef="usd">6156000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOmJjNWU1MDE1NTkyMTQ1ZTJiZDY1ODM0ODYwMTI2MmFjL3RhYmxlcmFuZ2U6YmM1ZTUwMTU1OTIxNDVlMmJkNjU4MzQ4NjAxMjYyYWNfNC0zLTEtMS03NjkxMA_d53bd7b0-2dd6-4992-bb87-c3d3e88b3dc2"
      unitRef="usd">7866000</us-gaap:InventoryNet>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="i682c94a884c54808853513b639aaddba_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMi0xLTEtMS03NjkxMA_8aedb6cb-9898-4dfc-8181-d4b438152439"
      unitRef="usd">2792000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="i5be37111720b4e3db2683efa15ba1627_I20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMi0zLTEtMS03NjkxMA_753e926b-41b1-48dd-b463-08016f1caaae"
      unitRef="usd">2956000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMi01LTEtMS03NjkxMA_f56507d0-b3f1-407e-97fe-7596d04165b1"
      unitRef="usd">3050000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="i665a74c29f70404086fd8174e737d9ae_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMi03LTEtMS03NjkxMA_902d3bb0-3e9b-4f17-a289-e4e383a0bc1c"
      unitRef="usd">2894000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesProvisionAccrual
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMy0xLTEtMS03NjkxMA_d433d401-8e66-469a-bff3-0ddcb7ae4fb1"
      unitRef="usd">-241000</efoi:InventoryValuationReservesProvisionAccrual>
    <efoi:InventoryValuationReservesProvisionAccrual
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMy0zLTEtMS03NjkxMA_6de7eb3f-9b03-4da7-989a-97a681af5b03"
      unitRef="usd">34000</efoi:InventoryValuationReservesProvisionAccrual>
    <efoi:InventoryValuationReservesProvisionAccrual
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMy01LTEtMS03NjkxMA_faac5206-a02a-4924-9aea-929278c3193c"
      unitRef="usd">-442000</efoi:InventoryValuationReservesProvisionAccrual>
    <efoi:InventoryValuationReservesProvisionAccrual
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfMy03LTEtMS03NjkxMA_a7fcb724-8b8a-4ac6-b76d-c507441e8559"
      unitRef="usd">-64000</efoi:InventoryValuationReservesProvisionAccrual>
    <efoi:InventoryValuationReservesSalesOfInventory
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNC0xLTEtMS03NjkxMA_dedb35f7-9c2e-43a8-a1ea-c5cc78b9e227"
      unitRef="usd">21000</efoi:InventoryValuationReservesSalesOfInventory>
    <efoi:InventoryValuationReservesSalesOfInventory
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNC0zLTEtMS03NjkxMA_1e515ad0-bde3-49e8-9eb5-83226826d301"
      unitRef="usd">36000</efoi:InventoryValuationReservesSalesOfInventory>
    <efoi:InventoryValuationReservesSalesOfInventory
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNC01LTEtMS03NjkxMA_bf0aca70-212a-44cc-a20a-980132fbad1b"
      unitRef="usd">278000</efoi:InventoryValuationReservesSalesOfInventory>
    <efoi:InventoryValuationReservesSalesOfInventory
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNC03LTEtMS03NjkxMA_71be4ac6-b300-4934-86b9-080f341c7360"
      unitRef="usd">72000</efoi:InventoryValuationReservesSalesOfInventory>
    <efoi:InventoryValuationReservesWriteOffs
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNS0xLTEtMS03NjkxMA_09ef09cb-c6ae-4eab-9b6a-bd5c960e2bf4"
      unitRef="usd">353000</efoi:InventoryValuationReservesWriteOffs>
    <efoi:InventoryValuationReservesWriteOffs
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNS0zLTEtMS03NjkxMA_2229702c-10fc-43cc-b919-a43ac47bfc38"
      unitRef="usd">0</efoi:InventoryValuationReservesWriteOffs>
    <efoi:InventoryValuationReservesWriteOffs
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNS01LTEtMS03NjkxMA_13c97dbf-be0a-4a6b-b996-9d254ea5cb29"
      unitRef="usd">555000</efoi:InventoryValuationReservesWriteOffs>
    <efoi:InventoryValuationReservesWriteOffs
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNS03LTEtMS03NjkxMA_7ae784f7-12f2-4966-8302-12f855f50e82"
      unitRef="usd">0</efoi:InventoryValuationReservesWriteOffs>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNi0xLTEtMS03NjkxMA_5d7809f0-6dcb-414f-8056-9862b0e4ef11"
      unitRef="usd">2659000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNi0zLTEtMS03NjkxMA_2afaa999-d854-45eb-b0d2-db38f5a503f3"
      unitRef="usd">2886000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNi01LTEtMS03NjkxMA_c855fc05-7418-4f5a-9390-542396138dce"
      unitRef="usd">2659000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RhYmxlOjZjNzdhNmUxY2QxZjQ0MWM5MmUyMjIzZDU5MzcxNDRkL3RhYmxlcmFuZ2U6NmM3N2E2ZTFjZDFmNDQxYzkyZTIyMjNkNTkzNzE0NGRfNi03LTEtMS03NjkxMA_e57e9b4d-0678-45cf-9ae8-cb85657e4624"
      unitRef="usd">2886000</efoi:InventoryValuationReservesRawMaterials>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInventory1
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M180OS9mcmFnOjcxMTI3MzI4ZjM3YjQ4ZGJhYjQyZDRjZDE4MmZhOWE2L3RleHRyZWdpb246NzExMjczMjhmMzdiNDhkYmFiNDJkNGNkMTgyZmE5YTZfNTQ5NzU1ODE2NDk3_8306166e-ef09-49d7-9175-f48ba28eee53"
      unitRef="usd">563000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInventory1>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfMzY0_ea8a9d14-d7ce-485e-8c5e-91e2ff186456">PROPERTY AND EQUIPMENT&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.824%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.062%"/&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.064%"/&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;September 30,&lt;br/&gt;2022&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;2021&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,096&#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,308&#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;413&#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;384&#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;81&#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;83&#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;86&#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;86&#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,144&#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,194&#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;141&#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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;mUVe&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;TM&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt; ultraviolet-C light disinfection robots (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;&#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;105&#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;Projects in progress&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;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="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;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 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:#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;3,042&#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;3,477&#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&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;Less: accumulated depreciation&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,609)&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,802)&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 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:#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;433&#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;675&#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;/table&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 $42&#160;thousand and $43&#160;thousand for the three months ended September 30, 2022 and 2021, respectively. For the nine months ended September 30, 2022 and 2021, depreciation expense was $129&#160;thousand and $143&#160;thousand, respectively. During the third quarter of 2022 it was determined that the mUVe&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;TM&lt;/span&gt; ultraviolet-C light disinfection robots were no longer of use and the net book value of $76&#160;thousand was recorded as a loss on write-off of fixed assets.</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfMzY5_f52e0f32-4467-4a0a-bec6-ef06f9926e80">&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.824%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.062%"/&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.064%"/&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;September 30,&lt;br/&gt;2022&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;2021&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,096&#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,308&#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;413&#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;384&#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;81&#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;83&#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;86&#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;86&#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,144&#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,194&#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;141&#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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;mUVe&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;TM&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt; ultraviolet-C light disinfection robots (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;&#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;105&#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;Projects in progress&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;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="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;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 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:#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;3,042&#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;3,477&#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&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;Less: accumulated depreciation&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,609)&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,802)&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 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:#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;433&#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;675&#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;/table&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i659a22b1f88d43dd8304aab21de18fde_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmNhZjkxZjM0NTlkMzRjYWY4MzE2NzczZTJiZGMwNjRhXzI3_4f794e08-f365-468b-a0e7-f5c1ff1a6867">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i60ee0e8736cc496c846b2201240c84a6_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmNhZjkxZjM0NTlkMzRjYWY4MzE2NzczZTJiZGMwNjRhXzMz_fdf6dc6f-beac-466d-8af4-c2b41ca37054">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i1238089d6da54d3c8539d51de8626cda_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMS0xLTEtMS03NjkxMA_44f5cbf7-a30c-4e6a-9aff-135e80d95aaf"
      unitRef="usd">1096000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i9a7128568ce2469894023f4f6893b7bf_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMS0zLTEtMS03NjkxMA_d00aacfd-23df-4642-852c-68ecc7fc97c2"
      unitRef="usd">1308000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i24ce2512c7d24aa699d52a6a11351c14_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMi0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmExZjhkNzMzMWVlNjQ0MzY5MmRmODdiYzM2MmYzYjdmXzI1_37e30b2e-5347-4ff6-ab33-bf82202340ec">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i830a5fc1ff324ae2a118bd1054516a3c_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMi0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmExZjhkNzMzMWVlNjQ0MzY5MmRmODdiYzM2MmYzYjdmXzMx_7c27a2f0-9a16-451e-9df4-eface0715ae9">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i86dcc6fe9135449ba9d46e0677d6b66a_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMi0xLTEtMS03NjkxMA_37630e01-5124-4b3c-8416-3cefcc07bb70"
      unitRef="usd">413000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i6b8e752b884f4eb08571d66b9b0dcd17_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMi0zLTEtMS03NjkxMA_69c8b84b-b7af-4622-9682-2f971ad75ff0"
      unitRef="usd">384000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ie0b83f3b603e49478cb9610d3da391dc_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMy0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjEzZTc2ZmRiNzE5YTRiMGU5Njg1ZWQ1OWY1OGJlMGZmXzI2_2cfbae37-3391-4050-bf50-3d1c5d40b636">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i7a590b8ad79c4667af1d3cd26ffcb56d_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMy0xLTEtMS03NjkxMA_cccde1e9-be13-47dd-bee1-74a079815460"
      unitRef="usd">81000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i7c439466ba374205986fa7cb14be2a0b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMy0zLTEtMS03NjkxMA_c8d09c22-5e54-4526-aec4-d006106a4394"
      unitRef="usd">83000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ia5562b5bdb584c64835b3f2bb0e9439f_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNC0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOmY0OWI1NTVhMTA0NDQzZTlhOTA3YWRhN2Y3MTdhMzM4XzQw_2a7b00bb-6187-4bab-a57a-e5ec691e9c88">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i3e344b971b5a476691993700b1257fbd_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNC0xLTEtMS03NjkxMA_b649cfd1-3dd5-4b61-b35d-56511acd40bf"
      unitRef="usd">86000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i9612b013077d42318d0d5227ee973c48_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNC0zLTEtMS03NjkxMA_7adb6b3b-d5c7-4299-9419-0711bf0b7ea0"
      unitRef="usd">86000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="iabd9dc0011de493fa7d5694fec513177_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNS0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjRhMDY4NWFmMDEyYjRjYzNhYjNkNjJkODYxZWZlZTJhXzM1_5dca8779-3773-40fb-9ff2-0e5efd698cab">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ibbf4fde323d2407c8d23f7b6e5b0b288_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNS0xLTEtMS03NjkxMA_8bfbd526-8f97-4c23-af3b-6621c3ea4f40"
      unitRef="usd">1144000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib04900d5da684b8290217bf5396c4518_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNS0zLTEtMS03NjkxMA_123a7162-98f7-4f0d-b101-2b6f2f0d0af7"
      unitRef="usd">1194000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib51bc3cbc26c483088e0902b28039501_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNi0xLTEtMS03NjkxMA_8af3bb2f-2b56-47a5-b84d-cd0e3069965a"
      unitRef="usd">141000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i90c363b72c2c474fbafe16c0ed016d62_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNi0zLTEtMS03NjkxMA_c4db61c2-d819-4800-9ea3-3f477f32dd9e"
      unitRef="usd">169000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNy0xLTEtMS03NjkxMA_aaee2beb-80e0-4cc4-b5e2-e42e3f62afe3"
      unitRef="usd">13000</us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfNy0zLTEtMS03NjkxMA_cc9eed05-894c-4c7d-a170-b332554770ca"
      unitRef="usd">13000</us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i19afb847ee1b409e8afdd00bb3187db3_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOC0wLTEtMS03NjkxMC90ZXh0cmVnaW9uOjk5OGZmMzZlN2Q2MTQwM2E4NzE4YTdmZDRmOGM2MzBmXzI5_6a8f3205-a366-4c72-80cc-d05338d6ac82">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i6b68b29bf54b4763a478d9538bdbded1_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOC0xLTEtMS03NjkxMA_d16c5d4b-f45a-4191-8977-9be23df3771e"
      unitRef="usd">0</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib7f854dbc9e847d7982f8d9eda2357cd_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOC0zLTEtMS03NjkxMA_91582f1c-9a3b-459a-80da-a19ae0ad7302"
      unitRef="usd">105000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="icc913f9acb27416c8be4ca7f04596c4d_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOS0xLTEtMS03NjkxMA_32758ff1-c13c-4b91-8ce7-8e88ca424117"
      unitRef="usd">68000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i791e06876671458fb0b76c5c1ec3b640_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfOS0zLTEtMS03NjkxMA_e95bdddf-adc0-4cc0-a5d8-5d17b4e8d027"
      unitRef="usd">135000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTAtMS0xLTEtNzY5MTA_d1647617-f751-4186-a822-422c7ee24b3b"
      unitRef="usd">3042000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTAtMy0xLTEtNzY5MTA_32af7448-1c89-4dc2-aaa9-b6bafc93705f"
      unitRef="usd">3477000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTEtMS0xLTEtNzY5MTA_cf6da0e9-a652-42d0-af1e-63bacf49f724"
      unitRef="usd">2609000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTEtMy0xLTEtNzY5MTA_b2bf7b8a-c276-43a3-8eaa-d0be5a2b0259"
      unitRef="usd">2802000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTItMS0xLTEtNzY5MTA_cfa366e4-3edc-4340-95cc-639749c417a6"
      unitRef="usd">433000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RhYmxlOmY5NWM2MTg5YjBiNDRkOTA5NmU2YWQ0NmYwNDIyYmYzL3RhYmxlcmFuZ2U6Zjk1YzYxODliMGI0NGQ5MDk2ZTZhZDQ2ZjA0MjJiZjNfMTItMy0xLTEtNzY5MTA_0ef0ceb8-8cc8-4c24-b3e5-06dfa4ef86c8"
      unitRef="usd">675000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:Depreciation
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfNTQ5NzU1ODE0MjYy_05875244-0831-408a-86dd-37de38a02a4e"
      unitRef="usd">42000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfNTQ5NzU1ODE0Mjcw_94abc308-4a31-4101-a060-adba8df8df37"
      unitRef="usd">43000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfNTQ5NzU1ODE0Mjc5_d60e6122-568f-4b22-ae97-92a43c61c481"
      unitRef="usd">129000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfNTQ5NzU1ODE0Mjg5_c5aefec1-3142-4056-a644-75ec3fbbc3e9"
      unitRef="usd">143000</us-gaap:Depreciation>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="id8164c90a0cc4543850c20165375ea5f_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181Mi9mcmFnOjc3ZTc1ZTA1ZjhkNTQ3ZGY5NGMzNDE4YTU0MmEzNDUyL3RleHRyZWdpb246NzdlNzVlMDVmOGQ1NDdkZjk0YzM0MThhNTQyYTM0NTJfMzg0ODI5MDY5ODM1MQ_683a5394-0c7c-451d-ac6e-650c91bfdb27"
      unitRef="usd">-76000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA3Ng_57481a38-f59b-4209-b949-f56993c91a4c">LEASES&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2027 under which it is responsible for related maintenance, taxes and insurance. The Company had one finance lease containing a bargain purchase option that was not renewed upon expiration of the lease during the second quarter of 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 our equipment operating leases had been extended through 2026. Additionally, as of March 25, 2022, in connection with extending through 2027, the terms of our expiring headquarters real estate operating lease for manufacturing, warehouse and office space have been modified beginning July 1, 2022 to reflect a smaller footprint at reduced costs. In accordance with Accounting Standards 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;), as a result of the extension, the related lease liability was remeasured and the right-of-use asset was adjusted for each lease at the time of modification in January 2021 and March 2022. The present value of the lease obligations for these leases were calculated using an incremental borrowing rate of 15.93% for the equipment lease and 16.96% for the real estate lease, which were the Company&#x2019;s blended borrowing rates (including interest, annual facility fees, collateral management fees, bank fees and other miscellaneous lender fees) 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 other remaining lease obligations continues to be calculated using an incremental borrowing rate of 7.25% (which excludes the annual facility fee and other lender fees), 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 the operating leases is 4.7 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 expired in June 2021. 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 Standards 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 sublease income in future years as of December&#160;31, 2020. The Company continued to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and continued to accrete those liabilities in accordance with Accounting Standards 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 2021 Annual Report.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were no finance lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021. Components of the operating and restructured lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021, were as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.401%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.161%"/&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:10.161%"/&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:10.161%"/&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:10.163%"/&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 September 30,&lt;/span&gt;&lt;/td&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;Nine months ended September 30,&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;2022&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;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;2022&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;2021&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 lease cost (income)&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;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;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 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 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;(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;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="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;(90)&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;(87)&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;Lease cost&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;83&#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;139&#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;298&#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;423&#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;Operating lease cost, net&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;74&#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;114&#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;208&#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;336&#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:8pt"&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;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;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="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;Restructured lease cost (income)&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="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="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 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="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="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;&#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="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;&#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="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;(136)&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 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="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;&#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;&#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;109&#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 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="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;&#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;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;&#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 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;&#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;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;(27)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;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;tr style="height:11pt"&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;border-top:1pt solid #000000;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;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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;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 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;74&#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;114&#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;208&#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;309&#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;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 style="margin-bottom:10pt"&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 September&#160;30, 2022 and December&#160;31, 2021 are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.924%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.362%"/&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:11.363%"/&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;September 30, 2022&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, 2021&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;1,248&#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;292&#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="display:none"/&gt;&lt;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 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 #000;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 #000;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 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,271&#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;351&#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="display:none"/&gt;&lt;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 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 #000;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 #000;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;(13)&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;(12)&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;&#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 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;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;/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;&#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="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&#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;&#x2014;&#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;1&#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:10pt"&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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:86.437%"/&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:11.363%"/&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;/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="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;October 2022&#160;to September 2023&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;384&#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;/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;October 2023 to September 2024&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;381&#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;/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;October 2024 to September 2025&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;383&#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;/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;October 2025 to September 2026&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;389&#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;/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;October 2026 to September 2027&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;295&#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;/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: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;1,832&#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="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;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;(561)&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;/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;1,271&#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="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:10pt"&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 and nine months ended September&#160;30, 2022 and 2021, was as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.461%"/&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:10.461%"/&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:10.461%"/&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:10.466%"/&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 September 30,&lt;/span&gt;&lt;/td&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;Nine months ended September 30,&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;2022&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;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;2022&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;2021&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: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="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="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;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="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;86&#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;161&#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;326&#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;421&#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;&#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 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;&#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 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;&#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 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;35&#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;&#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="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;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;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&#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="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA3Ng_9a3ac71d-c39e-46cd-9a84-1bebfd6119b5">LEASES&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2027 under which it is responsible for related maintenance, taxes and insurance. The Company had one finance lease containing a bargain purchase option that was not renewed upon expiration of the lease during the second quarter of 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 our equipment operating leases had been extended through 2026. Additionally, as of March 25, 2022, in connection with extending through 2027, the terms of our expiring headquarters real estate operating lease for manufacturing, warehouse and office space have been modified beginning July 1, 2022 to reflect a smaller footprint at reduced costs. In accordance with Accounting Standards 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;), as a result of the extension, the related lease liability was remeasured and the right-of-use asset was adjusted for each lease at the time of modification in January 2021 and March 2022. The present value of the lease obligations for these leases were calculated using an incremental borrowing rate of 15.93% for the equipment lease and 16.96% for the real estate lease, which were the Company&#x2019;s blended borrowing rates (including interest, annual facility fees, collateral management fees, bank fees and other miscellaneous lender fees) 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 other remaining lease obligations continues to be calculated using an incremental borrowing rate of 7.25% (which excludes the annual facility fee and other lender fees), 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 the operating leases is 4.7 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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 expired in June 2021. 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 Standards 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 sublease income in future years as of December&#160;31, 2020. The Company continued to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and continued to accrete those liabilities in accordance with Accounting Standards 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 2021 Annual Report.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were no finance lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021. Components of the operating and restructured lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021, were as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.401%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.161%"/&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:10.161%"/&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:10.161%"/&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:10.163%"/&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 September 30,&lt;/span&gt;&lt;/td&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;Nine months ended September 30,&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;2022&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;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;2022&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;2021&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 lease cost (income)&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;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;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 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 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;(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;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="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;(90)&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;(87)&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;Lease cost&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;83&#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;139&#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;298&#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;423&#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;Operating lease cost, net&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;74&#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;114&#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;208&#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;336&#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:8pt"&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;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;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="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;Restructured lease cost (income)&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="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="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 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="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="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;&#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="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;&#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="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;(136)&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 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="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;&#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;&#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;109&#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 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="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;&#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;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;&#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 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;&#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;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;(27)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;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;tr style="height:11pt"&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;border-top:1pt solid #000000;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;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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;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 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;74&#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;114&#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;208&#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;309&#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;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 style="margin-bottom:10pt"&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 September&#160;30, 2022 and December&#160;31, 2021 are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.924%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.362%"/&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:11.363%"/&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;September 30, 2022&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, 2021&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;1,248&#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;292&#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="display:none"/&gt;&lt;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 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 #000;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 #000;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 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,271&#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;351&#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="display:none"/&gt;&lt;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 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 #000;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 #000;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;(13)&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;(12)&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;&#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 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;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;/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;&#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="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&#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;&#x2014;&#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;1&#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:10pt"&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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:86.437%"/&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:11.363%"/&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;/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="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;October 2022&#160;to September 2023&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;384&#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;/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;October 2023 to September 2024&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;381&#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;/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;October 2024 to September 2025&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;383&#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;/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;October 2025 to September 2026&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;389&#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;/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;October 2026 to September 2027&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;295&#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;/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: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;1,832&#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="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;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;(561)&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;/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;1,271&#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="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:10pt"&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 and nine months ended September&#160;30, 2022 and 2021, was as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.461%"/&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:10.461%"/&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:10.461%"/&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:10.466%"/&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 September 30,&lt;/span&gt;&lt;/td&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;Nine months ended September 30,&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;2022&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;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;2022&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;2021&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: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="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="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;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="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;86&#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;161&#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;326&#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;421&#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;&#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 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;&#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 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;&#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 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;35&#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;&#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="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;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;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&#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="i1238089d6da54d3c8539d51de8626cda_I20220930"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfMTQ2Nw_07f9162b-af9e-44c9-9b67-94454418ff70"
      unitRef="number">0.1593</efoi:LesseeOperatingLeaseInterestRateEffectiveRate>
    <efoi:LesseeOperatingLeaseInterestRateEffectiveRate
      contextRef="i3ac220694ef94d599b5c4bcd6bc2f797_I20220930"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfMTQ5OA_f61fe236-5d41-4e25-81a8-adf9d6e6b48d"
      unitRef="number">0.1696</efoi:LesseeOperatingLeaseInterestRateEffectiveRate>
    <us-gaap:LesseeOperatingLeaseDiscountRate
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfMTk5OA_7b9fa6c3-db53-4cb2-815e-d2c9716d1125"
      unitRef="number">0.0725</us-gaap:LesseeOperatingLeaseDiscountRate>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfMjI4Mg_6161ccb6-f224-4772-b3c8-89203cfb6920">P4Y8M12D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA3Mw_3c970a7c-c355-4666-b8b5-8bc6d112f287">Components of the operating and restructured lease costs recognized in net loss for the three and nine months ended September&#160;30, 2022 and 2021, were as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.401%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.161%"/&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:10.161%"/&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:10.161%"/&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:10.163%"/&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 September 30,&lt;/span&gt;&lt;/td&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;Nine months ended September 30,&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;2022&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;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;2022&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;2021&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 lease cost (income)&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;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;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 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 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;(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;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="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;(90)&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;(87)&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;Lease cost&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;83&#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;139&#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;298&#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;423&#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;Operating lease cost, net&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;74&#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;114&#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;208&#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;336&#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:8pt"&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;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;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="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;Restructured lease cost (income)&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="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="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 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="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="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;&#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="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;&#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="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;(136)&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 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="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;&#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;&#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;109&#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 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="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;&#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;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;&#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 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;&#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;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;(27)&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="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;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;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;tr style="height:11pt"&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;border-top:1pt solid #000000;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;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;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;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 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;74&#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;114&#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;208&#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;309&#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;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;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:SubleaseIncome
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMy0xLTEtMS03NjkxMA_aac5d087-f25d-4a42-b9df-fe57261f13bb"
      unitRef="usd">9000</us-gaap:SubleaseIncome>
    <us-gaap:SubleaseIncome
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMy0zLTEtMS03NjkxMA_f0f9fa6c-60af-4ac2-911d-0abf81d4ec29"
      unitRef="usd">25000</us-gaap:SubleaseIncome>
    <us-gaap:SubleaseIncome
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMy01LTEtMS03NjkxMA_20ea904a-3f34-47d3-9434-9b59015c5b8b"
      unitRef="usd">90000</us-gaap:SubleaseIncome>
    <us-gaap:SubleaseIncome
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMy03LTEtMS03NjkxMA_730ef4e2-3508-4237-8664-2267f7cb4f3a"
      unitRef="usd">87000</us-gaap:SubleaseIncome>
    <us-gaap:OperatingLeaseCost
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNC0xLTEtMS03NjkxMA_9d1b8e2a-7ffd-49e4-9776-dc7577a41a23"
      unitRef="usd">83000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNC0zLTEtMS03NjkxMA_15825a56-2c8b-4c51-aaca-c02136cd9937"
      unitRef="usd">139000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNC01LTEtMS03NjkxMA_446a6524-04ed-4f0a-b3ef-0a867ec137c6"
      unitRef="usd">298000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNC03LTEtMS03NjkxMA_fb5c1d37-54eb-4fd4-817b-62c3ef6f46a8"
      unitRef="usd">423000</us-gaap:OperatingLeaseCost>
    <efoi:OperatingLeaseCostNetOfSubleaseIncome
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNS0xLTEtMS03NjkxMA_24ad41f4-2a28-4506-a2bb-85305d6e2b40"
      unitRef="usd">74000</efoi:OperatingLeaseCostNetOfSubleaseIncome>
    <efoi:OperatingLeaseCostNetOfSubleaseIncome
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNS0zLTEtMS03NjkxMA_4fd947d2-cb0a-4329-9f0a-6a8bc12c6912"
      unitRef="usd">114000</efoi:OperatingLeaseCostNetOfSubleaseIncome>
    <efoi:OperatingLeaseCostNetOfSubleaseIncome
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNS01LTEtMS03NjkxMA_69a98ad9-9a34-4e5a-905e-eef66d399b30"
      unitRef="usd">208000</efoi:OperatingLeaseCostNetOfSubleaseIncome>
    <efoi:OperatingLeaseCostNetOfSubleaseIncome
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfNS03LTEtMS03NjkxMA_51300650-8570-4987-8990-d120827dfe26"
      unitRef="usd">336000</efoi:OperatingLeaseCostNetOfSubleaseIncome>
    <efoi:RestructuredLeaseSubleaseIncome
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOC0xLTEtMS03NjkxMA_be53ac5f-b868-4b62-bdc3-72bb5a40ec59"
      unitRef="usd">0</efoi:RestructuredLeaseSubleaseIncome>
    <efoi:RestructuredLeaseSubleaseIncome
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOC0zLTEtMS03NjkxMA_82189a33-9236-4178-8fa9-c36d513561be"
      unitRef="usd">0</efoi:RestructuredLeaseSubleaseIncome>
    <efoi:RestructuredLeaseSubleaseIncome
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOC01LTEtMS03NjkxMA_a761d8d2-18fa-4b37-beea-be8dd3bab8bd"
      unitRef="usd">0</efoi:RestructuredLeaseSubleaseIncome>
    <efoi:RestructuredLeaseSubleaseIncome
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOC03LTEtMS03NjkxMA_e4b4ca6d-cb85-418f-ab89-f2446f41cd95"
      unitRef="usd">136000</efoi:RestructuredLeaseSubleaseIncome>
    <efoi:RestructuredLeaseOperatingLeaseCost
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOS0xLTEtMS03NjkxMA_00292312-04c8-4f82-99da-aaf892d1793d"
      unitRef="usd">0</efoi:RestructuredLeaseOperatingLeaseCost>
    <efoi:RestructuredLeaseOperatingLeaseCost
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOS0zLTEtMS03NjkxMA_169cbcde-e082-40a6-8a4c-6b8e25e4ecca"
      unitRef="usd">0</efoi:RestructuredLeaseOperatingLeaseCost>
    <efoi:RestructuredLeaseOperatingLeaseCost
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOS01LTEtMS03NjkxMA_464aba67-9869-4a0f-aa64-6f7a68577f96"
      unitRef="usd">0</efoi:RestructuredLeaseOperatingLeaseCost>
    <efoi:RestructuredLeaseOperatingLeaseCost
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfOS03LTEtMS03NjkxMA_917f9530-aedb-495b-be53-2e3db2ba3f4c"
      unitRef="usd">109000</efoi:RestructuredLeaseOperatingLeaseCost>
    <efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTAtMS0xLTEtNzY5MTA_c4463338-44ac-473a-a154-ab499f368ddf"
      unitRef="usd">0</efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome>
    <efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTAtMy0xLTEtNzY5MTA_e85b791b-9f47-44c9-916f-11378ca6b5fb"
      unitRef="usd">0</efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome>
    <efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTAtNS0xLTEtNzY5MTA_47b35d38-dcbc-4d7e-858d-bc32a6c71191"
      unitRef="usd">0</efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome>
    <efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTAtNy0xLTEtNzY5MTA_2481aa39-a339-4ba9-a2c2-b129bfee2f23"
      unitRef="usd">-27000</efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome>
    <us-gaap:LeaseCost
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTYtMS0xLTEtNzY5MTA_6317b7b3-508a-4145-88b7-5bc714409a86"
      unitRef="usd">74000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTYtMy0xLTEtNzY5MTA_d8fa09b2-af11-46be-bf43-da599c567c5e"
      unitRef="usd">114000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTYtNS0xLTEtNzY5MTA_4da4bc57-3ccb-4d8f-9383-18ef6549f179"
      unitRef="usd">208000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjkyOWJhNTlmODE3ZDQxNTE5Zjk3ZmFlNWUzZjkzYTE2L3RhYmxlcmFuZ2U6OTI5YmE1OWY4MTdkNDE1MTlmOTdmYWU1ZTNmOTNhMTZfMTYtNy0xLTEtNzY5MTA_bbdf47e9-ea8b-4993-9b45-dcd00121ee21"
      unitRef="usd">309000</us-gaap:LeaseCost>
    <efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA3NQ_53033194-b0a5-4eac-8301-8e99761754d4">&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 September&#160;30, 2022 and December&#160;31, 2021 are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.924%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.362%"/&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:11.363%"/&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;September 30, 2022&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, 2021&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;1,248&#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;292&#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="display:none"/&gt;&lt;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 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 #000;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 #000;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 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,271&#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;351&#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="display:none"/&gt;&lt;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 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 #000;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 #000;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;(13)&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;(12)&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;&#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 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;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;/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;&#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="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&#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;&#x2014;&#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;1&#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;</efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMi0xLTEtMS03NjkxMA_fc4e5a2e-7b82-4565-a20b-f33bcedb7a39"
      unitRef="usd">1248000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMi0zLTEtMS03NjkxMA_1dd27b9f-7ba7-4b61-8259-b2c3a9911bc5"
      unitRef="usd">292000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiability
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfNi0xLTEtMS03NjkxMA_0f376205-21b2-4326-8544-4d35a342e984"
      unitRef="usd">1271000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfNi0zLTEtMS03NjkxMA_ce52ac46-a377-4b47-8636-c7eb53b750b8"
      unitRef="usd">351000</us-gaap:OperatingLeaseLiability>
    <efoi:FinanceLeaseRightOfUseAssetGross
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTEtMS0xLTEtNzY5MTA_36885a76-1869-4324-b021-07e7c02f99c4"
      unitRef="usd">13000</efoi:FinanceLeaseRightOfUseAssetGross>
    <efoi:FinanceLeaseRightOfUseAssetGross
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTEtMy0xLTEtNzY5MTA_c654a143-0896-46a1-adec-085ee93e2e8d"
      unitRef="usd">13000</efoi:FinanceLeaseRightOfUseAssetGross>
    <efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTItMS0xLTEtNzY5MTA_ad638118-2079-46a2-9224-ffb4d434d806"
      unitRef="usd">13000</efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation>
    <efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTItMy0xLTEtNzY5MTA_5a86a335-cbf8-4483-8091-c04f726f5721"
      unitRef="usd">12000</efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTMtMS0xLTEtNzY5MTA_ddf6595b-6342-41cb-99a3-54803ecaa487"
      unitRef="usd">0</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTMtMy0xLTEtNzY5MTA_873e7a2a-5b0c-444e-9e92-3d8fffdec0df"
      unitRef="usd">1000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseLiability
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTUtMS0xLTEtNzY5MTA_33592e7c-6c00-4f64-a500-2ff66f08a39c"
      unitRef="usd">0</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTUtMy0xLTEtNzY5MTA_21870ff4-1c3c-40f8-886f-f6d0481b3bd2"
      unitRef="usd">1000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTYtMS0xLTEtNzY5MTA_0345201c-2e9d-4309-b673-7b629bb46bcd"
      unitRef="usd">0</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjc5MjEyY2Y0ODY1NjQxY2RiOTFiNDFmODZhYjQyNGM3L3RhYmxlcmFuZ2U6NzkyMTJjZjQ4NjU2NDFjZGI5MWI0MWY4NmFiNDI0YzdfMTYtMy0xLTEtNzY5MTA_34a28fa5-5384-490a-9129-24d974f8e817"
      unitRef="usd">1000</us-gaap:FinanceLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA4MQ_0262b2f3-a358-481c-951c-5e24f7cb7618">&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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:86.437%"/&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:11.363%"/&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;/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="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;October 2022&#160;to September 2023&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;384&#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;/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;October 2023 to September 2024&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;381&#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;/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;October 2024 to September 2025&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;383&#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;/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;October 2025 to September 2026&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;389&#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;/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;October 2026 to September 2027&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;295&#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;/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: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;1,832&#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="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;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;(561)&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;/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;1,271&#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="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;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDA4MQ_55685a7e-9b3f-4d94-8c1b-2f9b078c4d25">&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 and finance leases for each of the 12-month rolling periods below in effect at September&#160;30, 2022 are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:86.437%"/&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:11.363%"/&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;/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="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;October 2022&#160;to September 2023&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;384&#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;/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;October 2023 to September 2024&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;381&#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;/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;October 2024 to September 2025&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;383&#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;/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;October 2025 to September 2026&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;389&#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;/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;October 2026 to September 2027&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;295&#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;/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: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;1,832&#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="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;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;(561)&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;/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;1,271&#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="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;</us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfMS0yLTEtMS03NjkxMA_d07f65d0-8044-4ca2-a160-4f115f1b1150"
      unitRef="usd">384000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfMi0yLTEtMS03NjkxMA_da6fe676-805e-42ce-9dfd-12351f649b5b"
      unitRef="usd">381000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfMy0yLTEtMS03NjkxMA_3edf17cf-22e5-4566-955d-11e168f09a9c"
      unitRef="usd">383000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfNC0yLTEtMS03NjkxMA_2737cd12-6a86-4fb4-9a83-6137d65cc2f0"
      unitRef="usd">389000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfNS0yLTEtMS03NjkxMA_72cb95b8-93bb-476e-80e5-2d55482ffa90"
      unitRef="usd">295000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfNy0yLTEtMS03NjkxMA_21e8f369-0fd8-4b46-9281-4d9db46264a4"
      unitRef="usd">1832000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfOC0yLTEtMS03NjkxMA_8eb3281b-6bcc-4aa2-9e72-a53638db26eb"
      unitRef="usd">561000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOjNiNWQ2MmI4OWExNjRhZDhhZGRjOWE0YjkxZWRmNWRhL3RhYmxlcmFuZ2U6M2I1ZDYyYjg5YTE2NGFkOGFkZGM5YTRiOTFlZGY1ZGFfOS0yLTEtMS03NjkxMA_2c630916-d2b0-46b7-9a7b-63f55a84968a"
      unitRef="usd">1271000</us-gaap:OperatingLeaseLiability>
    <efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RleHRyZWdpb246ZjI0OWFkYjg5NTY1NGIxNzgzNDUxNGYyNjhmNDI5ZjhfNDExNA_26393497-98e2-4d9a-afc3-c5ddcb84d6bb">&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 and nine months ended September&#160;30, 2022 and 2021, was as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:50.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.461%"/&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:10.461%"/&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:10.461%"/&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:10.466%"/&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 September 30,&lt;/span&gt;&lt;/td&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;Nine months ended September 30,&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;2022&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;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;2022&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;2021&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: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="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="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;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="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;86&#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;161&#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;326&#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;421&#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;&#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 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;&#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 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;&#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 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;35&#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;&#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="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;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;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&#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;</efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNC0xLTEtMS03NjkxMA_3e67de05-e039-4cb9-87e4-9dd4c8d9936e"
      unitRef="usd">86000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNC0zLTEtMS03NjkxMA_3ac67155-9584-4ce4-8904-8b6d027d443a"
      unitRef="usd">161000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNC01LTEtMS03NjkxMA_3f011e94-c88e-4c3c-b632-cf6c594588ee"
      unitRef="usd">326000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNC03LTEtMS03NjkxMA_7e043c3e-696b-497f-b2e5-b0a50347c933"
      unitRef="usd">421000</us-gaap:OperatingLeasePayments>
    <efoi:RestructuredLeasesOperatingLeasePayments
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNS0xLTEtMS03NjkxMA_58ad2391-77f5-40ef-910f-60aa5c6558a4"
      unitRef="usd">0</efoi:RestructuredLeasesOperatingLeasePayments>
    <efoi:RestructuredLeasesOperatingLeasePayments
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNS0zLTEtMS03NjkxMA_f03025ed-47c2-4596-854e-2f90734fe0f4"
      unitRef="usd">0</efoi:RestructuredLeasesOperatingLeasePayments>
    <efoi:RestructuredLeasesOperatingLeasePayments
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNS01LTEtMS03NjkxMA_5d3510b1-360a-4748-9ff1-30fd7d4a90f5"
      unitRef="usd">0</efoi:RestructuredLeasesOperatingLeasePayments>
    <efoi:RestructuredLeasesOperatingLeasePayments
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNS03LTEtMS03NjkxMA_0f70b87f-6e1d-455a-9377-bffedd7f30ed"
      unitRef="usd">35000</efoi:RestructuredLeasesOperatingLeasePayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNi0xLTEtMS03NjkxMA_5ae5bfea-13ba-4264-bc46-2d7219bbc4b1"
      unitRef="usd">0</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNi0zLTEtMS03NjkxMA_b7f9af60-8f3c-4cc1-a1a1-3d1154594934"
      unitRef="usd">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNi01LTEtMS03NjkxMA_4c85a743-dab0-481d-a806-84b5d937251a"
      unitRef="usd">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181NS9mcmFnOmYyNDlhZGI4OTU2NTRiMTc4MzQ1MTRmMjY4ZjQyOWY4L3RhYmxlOmMzNjQ2MzkzZjJmZjRiYTBiYjY3YzI1ZTQwZjY4OWQ4L3RhYmxlcmFuZ2U6YzM2NDYzOTNmMmZmNGJhMGJiNjdjMjVlNDBmNjg5ZDhfNi03LTEtMS03NjkxMA_d8f20926-6440-4f6f-b917-053a4cbe9fa2"
      unitRef="usd">3000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfOTE2Mw_47206cea-0174-4748-a5ac-f5cedd0086f2">DEBT&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On August 11, 2020, we entered into two debt financing arrangements (together, the &#x201c;Credit Facilities&#x201d;) that allow for expanded borrowing capacity at a lower blended borrowing cost. 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 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. 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 to $3.5 million, subject to the borrowing base as set forth in the Inventory Loan Agreement. 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-month LIBOR rate (3.07% and 0.21% at September&#160;30, 2022 and December&#160;31, 2021, respectively) and is also subject to a service fee of 1% per month. The annualized interest rate at September&#160;30, 2022 and December&#160;31, 2021, which includes interest fees, the annual facility fee, bank fees and other miscellaneous lender fees, was 23.4% and 22.4%, 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. 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 term was automatically extended for one year on August 11, 2022, and now matures on August 11, 2023, subject to early termination upon  demand by the IF lender with 90 days&#x2019; notice and otherwise in accordance with the terms of the Inventory Loan Agreement. The annual facility fee of $70&#160;thousand was paid during September of 2022 upon renewal. During the third quarter of 2022, as a result of a reduction in borrowing base following an updated inventory appraisal, the IF Lender consented to the company reducing its excess borrowings over an 8-week transition period in accordance with an agreed over-allowance schedule. The term is automatically extended in successive one (1) year increments unless terminated by either party in accordance with the Inventory Loan Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 and (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 (6.25% at September&#160;30, 2022 and 3.25% at December 31, 2021) plus (ii) 2%. At September&#160;30, 2022 and December&#160;31, 2021, the annualized interest rate, which includes interest fees and the annual facility fee, was 9.4% and 8.0%, respectively. The annualized interest rate on the collateral management fee was 6.0% at both September&#160;30, 2022 and December&#160;31, 2021. The Receivables Facility is also 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. 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 term was automatically extended for one year on August 11, 2022 and now matures on August 11, 2023, subject to early termination by either party in accordance with the terms of the Receivables Loan Agreement including by optional prepayment of the Receivables Facility along with an early termination fee, 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. The annual facility fee of $25&#160;thousand was accrued for during September of 2022 upon renewal.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 $1.6 million and $1.2 million at September&#160;30, 2022 and December&#160;31, 2021, respectively. Borrowings under the Receivables Facility were $0.4 million and $1.0 million at September&#160;30, 2022 and December&#160;31, 2021, respectively. These Credit Facilities are recorded in the Condensed Consolidated Balance Sheets as of September&#160;30, 2022 and December&#160;31, 2021 as a current liability under the caption &#x201c;Credit line borrowings.&#x201d; Outstanding balances include unamortized net issuance costs totaling $64 thousand and $84 thousand for the Inventory Facility and $21 thousand and $24 thousand for the Receivables Facility as of September&#160;30, 2022 and December&#160;31, 2021, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Promissory Note Payable&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On September&#160;16, 2022, we entered into a short-term unsecured Promissory Note (the &#x201c;2022 Promissory Note&#x201d;) with Mei-Yun (Gina) Huang in the original principal amount of $0.5 million. Ms. Huang is a member of the Company&#x2019;s board of directors. The total liability for the 2022 Promissory Note was $0.5 million at September&#160;30, 2022. Please refer to Note 12, &#x201c;Related Party Transaction&#x201d; for further detail.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Streeterville Notes&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;2022 Note&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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&#160;21, 2022, we entered into a note purchase agreement (the &#x201c;2022 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 $2.0 million (the &#x201c;2022 Streeterville Note&#x201d;). The 2022 Streeterville Note was issued with an original issue discount of $215 thousand and Streeterville paid a purchase price of approximately $1.8 million for the 2022 Streeterville Note, from which the Company paid $15 thousand to Streeterville for Streeterville&#x2019;s transaction expenses.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The 2022 Streeterville Note has a maturity date of April&#160;21, 2024, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the 2022 Streeterville Note at a premium, which is 5% during the first six months and 7.5% thereafter. Prepayments at the reduced rate in the first six months are limited to 50% of the outstanding balance. Beginning on December 1, 2022, Streeterville may require the Company to redeem up to $225 thousand of the 2022 Streeterville Note in any calendar month. The Company has the right on five occasions, but not during more than three consecutive months, 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 2022 Streeterville Note by 1.5%.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2022 Streeterville Note, net of discount and financing fees, was $1.9 million at September&#160;30, 2022. Unamortized loan discount and debt issuance costs for the 2022 Streeterville Note were $183 thousand at September&#160;30, 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 event our common stock is delisted from Nasdaq, the amount outstanding under the 2022 Streeterville Note will automatically increase by 15% as of the date of such delisting.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;2021 Note&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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&#160;27, 2021, we entered into a note purchase agreement with Streeterville pursuant to which we sold and issued to Streeterville a promissory note in the principal amount of approximately $1.7 million (the &#x201c;2021 Streeterville Note&#x201d;). The 2021 Streeterville Note was issued with an original issue discount of $194 thousand and Streeterville paid a purchase price of $1.5 million for the 2021 Streeterville Note, after deduction of $15 thousand of Streeterville&#x2019;s transaction expenses.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The 2021 Streeterville Note has a maturity date of April&#160;27, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the 2021 Streeterville Note at a premium, which is 5% during the first three months and 10% thereafter. Prepayments at the reduced rate in the first three months are limited to 50% of the outstanding balance. Beginning on November 1, 2021, Streeterville may require the Company to redeem up to $205 thousand of the 2021 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, and Streeterville agreed to accept a fourth redemption deferral on the same terms during the third quarter of 2022. Each exercise of this deferral right by the Company will increase the amount outstanding under the 2021 Streeterville Note by 1.5%. The Company exercised this right twice during the fourth quarter of 2021, once during the second quarter of 2022 and once during the third quarter of 2022. The Company and Streeterville have agreed to exchange common stock for the required redemption in October 2022, totaling $205 thousand converted to equity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2021 Streeterville Note, net of discount and financing fees, was $0.4 million and $1.7 million at September&#160;30, 2022 and December&#160;31, 2021, respectively. Unamortized loan discount and debt issuance costs for the 2021 Streeterville Note were $61 thousand and $140 thousand at September&#160;30, 2022 and December&#160;31, 2021, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 event our common stock is delisted from Nasdaq, the amount outstanding under the 2021 Streeterville Note will automatically increase by 15% as of the date of such delisting.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;PPP Loan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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&#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% per annum. 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 (&#x201c;SBA&#x201d;) on February 11, 2021. The $801 thousand forgiveness income was recorded as other income in the Condensed Consolidated Statements of Operations during the nine months ended September 30, 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <efoi:DebtInstrumentNumberOfCreditFacilities
      contextRef="i9446277efb414c7394ebb1b0c8aebd3d_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzI_eeccba92-64ed-47cb-864b-2464dd281198"
      unitRef="creditfacility">2</efoi:DebtInstrumentNumberOfCreditFacilities>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i18ff291df7b8496cb9875868c6794628_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTg0_1434f5cc-d427-461b-8b16-4b89ba2288f7"
      unitRef="usd">3000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ica765d7e1dd64880aa3b5af97188883b_I20210420"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjMx_89fd63b6-8ccf-4520-a3f4-e3e0bf87156d"
      unitRef="usd">3500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent
      contextRef="i18ff291df7b8496cb9875868c6794628_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzc1_28d5a9ec-ce67-4a11-86f5-967121abb657"
      unitRef="number">0.75</efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent>
    <efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent
      contextRef="i18ff291df7b8496cb9875868c6794628_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODAw_506fa03d-4918-403c-acbd-14e32f7c46a3"
      unitRef="number">0.85</efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i18ff291df7b8496cb9875868c6794628_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTA2Mw_1434f5cc-d427-461b-8b16-4b89ba2288f7"
      unitRef="usd">3000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ica765d7e1dd64880aa3b5af97188883b_I20210420"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTA2OQ_89fd63b6-8ccf-4520-a3f4-e3e0bf87156d"
      unitRef="usd">3500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i18ff291df7b8496cb9875868c6794628_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTI2MQ_bea4d09f-a9fb-4565-adae-093019bb5949"
      unitRef="number">0.0575</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="if71eac1a49294bdc9b5803cead4065ae_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTI3Mw_40dc8aea-667b-40d0-a8f0-6c2e43c412d0"
      unitRef="number">0.0400</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:DebtInstrumentBaseRateVariable
      contextRef="i3c82664ebcef4ec8bf8b99764b232564_I20220930"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTMwOQ_adf67f4e-d525-4432-b69d-03b54d90085d"
      unitRef="number">0.0307</efoi:DebtInstrumentBaseRateVariable>
    <efoi:DebtInstrumentBaseRateVariable
      contextRef="ic8af432b0fc54d44a9d407badbc5a3cd_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTMxNg_6cdd9f10-0d78-4db1-8805-5ad02b09ed39"
      unitRef="number">0.0021</efoi:DebtInstrumentBaseRateVariable>
    <efoi:LineOfCreditFacilityMonthlyFacilityFeePercent
      contextRef="i10b7d00133c949799bb2b40563bb4c8f_D20200811-20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTM4Nw_aa721e55-9a15-488c-9ead-75e763901508"
      unitRef="number">0.01</efoi:LineOfCreditFacilityMonthlyFacilityFeePercent>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i971c9edf22194ca1a8067ef5d3d289ff_I20220930"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTU1MA_75a38ef8-beda-44d5-a74f-d3a7ccc10715"
      unitRef="number">0.234</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i0ecf8623aa0841ef9793311037e6ac63_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTU1Nw_f069084c-d762-48e4-9fb2-84d2babf2e64"
      unitRef="number">0.224</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:LineOfCreditFacilityMonthlyFacilityFee
      contextRef="i10b7d00133c949799bb2b40563bb4c8f_D20200811-20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMTY4MQ_00be0245-14f5-436c-908f-6769ef5d0205"
      unitRef="usd">18000</efoi:LineOfCreditFacilityMonthlyFacilityFee>
    <us-gaap:LineOfCreditFacilityExpirationPeriod
      contextRef="i0a615a216f2a4c009ef7875759edf4c6_D20220811-20220811"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMjkyMw_dedbeb07-a9b9-4dea-8a99-c9ceea79cf81">P1Y</us-gaap:LineOfCreditFacilityExpirationPeriod>
    <efoi:LineOfCreditFacilityTerminationNoticePeriod
      contextRef="i0a615a216f2a4c009ef7875759edf4c6_D20220811-20220811"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMjk1Mg_ae1ae344-0cdb-497f-80e9-2f9f7247c0b5">P90D</efoi:LineOfCreditFacilityTerminationNoticePeriod>
    <efoi:LineOfCreditFacilityAnnualFacilityFee
      contextRef="ie762edb4f9d24e66a3ffb1b02b4080e5_D20220901-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODMwMDIz_bea53d85-535a-469c-a8e6-4b2f42cea433"
      unitRef="usd">70000</efoi:LineOfCreditFacilityAnnualFacilityFee>
    <us-gaap:LineOfCreditFacilityExpirationPeriod
      contextRef="ie762edb4f9d24e66a3ffb1b02b4080e5_D20220901-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMzY5MA_d541aa2f-2b9f-436e-82c3-a8242775e9a4">P1Y</us-gaap:LineOfCreditFacilityExpirationPeriod>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i196ba82f2e6240a8b6c413dfcc04dd31_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMjc5MQ_99af6ffb-f550-4af2-95ed-7b9a4a46905c"
      unitRef="usd">2500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <efoi:LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent
      contextRef="i196ba82f2e6240a8b6c413dfcc04dd31_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMjkyNQ_e00bbd77-046e-47d4-84a9-3ef872ce1bba"
      unitRef="number">0.90</efoi:LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent>
    <efoi:DebtInstrumentBaseRateVariable
      contextRef="id3d5f742cace4efb8dfae66add4b2ac1_I20220930"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzE5Nw_0b7635f5-241e-4bb9-a9e3-4822e0c1b3c4"
      unitRef="number">0.0625</efoi:DebtInstrumentBaseRateVariable>
    <efoi:DebtInstrumentBaseRateVariable
      contextRef="ibb51bc029bfa4e51af056061a860e167_I20211231"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzIxMA_f509d3d1-5de6-4ef4-af00-c7baa1cea6e8"
      unitRef="number">0.0325</efoi:DebtInstrumentBaseRateVariable>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i196ba82f2e6240a8b6c413dfcc04dd31_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzI0NQ_4e83cd09-e321-4096-94c2-d5d5eaa09a9f"
      unitRef="number">0.02</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzM1NQ_0c6cca3c-bc97-4696-a9c6-1535125b62c8"
      unitRef="number">0.094</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i905894c4d5bc4eda86e1b7978f996e3f_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzM2Mg_7adb3a93-cb61-403b-9ef7-9cc658525437"
      unitRef="number">0.080</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee
      contextRef="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzQ0Ng_77d647c9-1de8-4288-b774-6d127682aac9"
      unitRef="number">0.060</efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee>
    <efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee
      contextRef="i905894c4d5bc4eda86e1b7978f996e3f_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzQ0Ng_99c4ff4d-17df-4ad8-ae28-d8fe5eb1d84d"
      unitRef="number">0.060</efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee>
    <efoi:LineOfCreditFacilityMonthlyFacilityFee
      contextRef="i53563dc83c6742ab84eaea9a54e206f0_D20200811-20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzY4NA_9449a0de-900e-4066-9e69-cd1a19df3fa6"
      unitRef="usd">25000</efoi:LineOfCreditFacilityMonthlyFacilityFee>
    <efoi:LineOfCreditFacilityMonthlyFacilityFeePercent
      contextRef="i53563dc83c6742ab84eaea9a54e206f0_D20200811-20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzY5MQ_32e7691f-8dca-4afe-9df1-b8e08f241d8e"
      unitRef="number">0.01</efoi:LineOfCreditFacilityMonthlyFacilityFeePercent>
    <us-gaap:LineOfCreditFacilityExpirationPeriod
      contextRef="i23f3a31d94194ab0b7d658e82442a131_D20220811-20220811"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMjkyNA_98262822-7f5c-4a0e-a204-99083b897442">P1Y</us-gaap:LineOfCreditFacilityExpirationPeriod>
    <us-gaap:LineOfCreditFacilityExpirationPeriod
      contextRef="ic3a263d6a4e54941b0cae626cdaf3842_D20220901-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfMzg0ODI5MDcxMzY5OA_9452da0a-83f5-44f4-b984-db74dbe8bc77">P1Y</us-gaap:LineOfCreditFacilityExpirationPeriod>
    <efoi:LineOfCreditFacilityAnnualFacilityFee
      contextRef="ic3a263d6a4e54941b0cae626cdaf3842_D20220901-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODMwNDMx_68312f84-41ac-4270-8072-3be9034e2edb"
      unitRef="usd">25000</efoi:LineOfCreditFacilityAnnualFacilityFee>
    <us-gaap:LinesOfCreditCurrent
      contextRef="i971c9edf22194ca1a8067ef5d3d289ff_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDI0Mw_03f0ea05-690e-47f5-92c3-73ea78e0cf07"
      unitRef="usd">1600000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="i0ecf8623aa0841ef9793311037e6ac63_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODI5MjE0_dab4d080-111d-494b-a4a9-27b17aeccc0b"
      unitRef="usd">1200000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDMxMg_b38a3cb0-13d7-44ff-9cb8-734ad9bc20b8"
      unitRef="usd">400000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="i905894c4d5bc4eda86e1b7978f996e3f_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDMxOQ_d1347a74-c103-4b6a-997e-e1ff396ce720"
      unitRef="usd">1000000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:UnamortizedDebtIssuanceExpense
      contextRef="i971c9edf22194ca1a8067ef5d3d289ff_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDU4NA_3a985cb2-1272-4ec8-92f1-ffb5e7e2bed9"
      unitRef="usd">64000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:UnamortizedDebtIssuanceExpense
      contextRef="i0ecf8623aa0841ef9793311037e6ac63_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDU5MQ_9d712316-965f-4092-8ca4-0244996b9cd5"
      unitRef="usd">84000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:UnamortizedDebtIssuanceExpense
      contextRef="ie2ddd9ad4a63497cbb5532347b4e283b_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDYyNQ_2a7f87ad-4af2-4fca-b4f7-5b7f2b42e798"
      unitRef="usd">21000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:UnamortizedDebtIssuanceExpense
      contextRef="i905894c4d5bc4eda86e1b7978f996e3f_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDYzMg_9b60710b-8cf0-4d7b-ad65-1ecabdb6ffb8"
      unitRef="usd">24000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction
      contextRef="i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODMwMzU2_5a0b118b-e0b0-4899-ad14-eccd414d3a3f"
      unitRef="usd">500000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:DueToRelatedPartiesCurrentAndNoncurrent
      contextRef="ie76c4408e5e7447794eacfc4da73a57d_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODI3NDY4_ba3f7ec2-ffc7-4791-b534-114ed270c0f0"
      unitRef="usd">500000</us-gaap:DueToRelatedPartiesCurrentAndNoncurrent>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNDk4OA_c04e4f06-3ad3-4d0e-8a66-79d7374e9373"
      unitRef="usd">2000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTA5OA_12bf3124-a045-4c02-83e6-b6cf46fec119"
      unitRef="usd">215000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTE1OA_58a2c2a6-1ecf-4457-82c6-3122377f53d1"
      unitRef="usd">1800000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTIyMg_36602119-c761-4844-8fd7-1ceb014832c9"
      unitRef="usd">15000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTM2Mw_d0698719-214c-4511-b44b-a6700ab06500"
      unitRef="number">0.08</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:DebtInstrumentPrepaymentPremiumPercent
      contextRef="i389bf4726fa24bae9f309a337b67ce6e_D20220421-20220421"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTUyNw_521bf3a9-ab88-4398-a3d2-35ec32ffd575"
      unitRef="number">0.05</efoi:DebtInstrumentPrepaymentPremiumPercent>
    <efoi:DebtInstrumentPrepaymentPremiumPercent
      contextRef="i2d71d179ac9d45ee8f2360098e53dba3_D20220421-20220421"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTU2Mg_08da230e-435b-4f2a-9c33-9c6d5592d840"
      unitRef="number">0.075</efoi:DebtInstrumentPrepaymentPremiumPercent>
    <efoi:DebtPrepaymentMaximumPercentage
      contextRef="i389bf4726fa24bae9f309a337b67ce6e_D20220421-20220421"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTY0OA_28fe9aa5-7ab0-4691-97f4-847c1854d9a5"
      unitRef="number">0.50</efoi:DebtPrepaymentMaximumPercentage>
    <efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount
      contextRef="if6e668f6124e450d84a74981dedfb0ee_I20220421"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTc2NA_3f68a8c2-af1e-4058-8548-7857b8b5020f"
      unitRef="usd">225000</efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount>
    <efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals
      contextRef="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTg1MA_7ee7f87f-9e08-4c78-87d0-38cbb2841e6b"
      unitRef="creditfacility">5</efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals>
    <efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption
      contextRef="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjE1Ng_72175b6f-534e-4918-8715-5c9d5b44cb1a"
      unitRef="number">0.015</efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i414b414730cb486699f40f17b197d20f_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjI1Mw_85f4f0c3-0c25-4a8c-84ce-0311a75bb774"
      unitRef="usd">1900000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="i414b414730cb486699f40f17b197d20f_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjM1MA_005eab0f-7750-44e4-9369-7d474f823693"
      unitRef="usd">183000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <efoi:DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange
      contextRef="i528f4262805241ccb99dd795dac9c3ad_D20220421-20220421"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjUwMw_dedbab8f-23de-42e6-a690-c8abdaaa1ca4"
      unitRef="number">0.15</efoi:DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjczMQ_239c13f0-5250-4c4d-95ad-a59aa35cebe0"
      unitRef="usd">1700000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjg0MQ_851f0aa7-e922-43c1-83b1-37832ffcc006"
      unitRef="usd">194000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjg4Nw_5b590c4a-9414-4a4c-9d77-6d33f50433c5"
      unitRef="usd">1500000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNjk0Mg_1cc573df-0989-4ed6-a8e0-ebc90ff4c2a3"
      unitRef="usd">15000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzA2NQ_e7a0c568-7855-403b-9ad4-cb0fa11b3d2b"
      unitRef="number">0.08</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:DebtInstrumentPrepaymentPremiumPercent
      contextRef="i2e938b483e9c44d8a2997c541f085160_D20210427-20210427"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzIyOQ_4274e24d-cd3c-4c01-97f3-b44f8414a7ca"
      unitRef="number">0.05</efoi:DebtInstrumentPrepaymentPremiumPercent>
    <efoi:DebtInstrumentPrepaymentPremiumPercent
      contextRef="i86c7dafd35b7400bae6e5f62e5db0929_D20210427-20210427"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzI2Ng_1c25824a-3763-42e4-8a8e-55ba918ff02b"
      unitRef="number">0.10</efoi:DebtInstrumentPrepaymentPremiumPercent>
    <efoi:DebtPrepaymentMaximumPercentage
      contextRef="i2e938b483e9c44d8a2997c541f085160_D20210427-20210427"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzM1NA_b2bcd1b1-d71e-4d52-a0d6-a40cdb8018ca"
      unitRef="number">0.50</efoi:DebtPrepaymentMaximumPercentage>
    <efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount
      contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzQ3MA_3bc418b1-38b5-4eb4-aaed-a1680ecc6e07"
      unitRef="usd">205000</efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount>
    <efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals
      contextRef="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzU1Ng_4cee06ec-6364-4f92-89fb-11ace1259c4d"
      unitRef="creditfacility">3</efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals>
    <efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption
      contextRef="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNzgxMA_3683374c-200d-4153-bc33-7cc5d59adeea"
      unitRef="number">0.015</efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="i498ed019b5194c86b2cc36ba153b0b61_D20221001-20221031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfNTQ5NzU1ODMwNDI0_2f7b1cad-116c-40ee-88ac-6ba9215631d8"
      unitRef="usd">205000</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="i81c56b06f30049639c85bc9c0500b505_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODAyNA_8b0ede11-4355-4632-8a27-cd50e36aa3f0"
      unitRef="usd">400000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="if84f49ab63ca4d8ab1bcf8d266e47b60_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODAzMQ_d0e63b3a-1065-4736-b0de-c54c26d4d43b"
      unitRef="usd">1700000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="i81c56b06f30049639c85bc9c0500b505_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODE0OQ_d736c04b-a4d8-4d43-b117-bbfc93d5f1bf"
      unitRef="usd">61000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="if84f49ab63ca4d8ab1bcf8d266e47b60_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODE1Ng_70c12cd4-61e6-4bb8-8728-722cff06e736"
      unitRef="usd">140000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <efoi:DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange
      contextRef="i9ec530da84b346c8b60921a4af4b7ec9_D20210427-20210427"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODMzMA_45f1a494-ed53-4691-b1af-3dafcee87d71"
      unitRef="number">0.15</efoi:DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange>
    <us-gaap:ProceedsFromLoanOriginations1
      contextRef="i66532045d3ec4a78a77591cbe026cc94_D20200417-20200417"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODQ5MQ_6b899c37-f870-4bdb-9f4c-c6ba7f23ff26"
      unitRef="usd">795000</us-gaap:ProceedsFromLoanOriginations1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i93d30f8a964643aab7ca91a6bfd8ee01_I20200417"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfODc1Mw_9f663872-76eb-40e2-a4fa-e7f765a31a28"
      unitRef="number">0.01</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="iea8d7ac65a5c4beabc4e0669316eaf21_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M181OC9mcmFnOjQyODZjNGFkNDFkZjQ0ZWI5MzAxNDJkZGZjMGM3OTVjL3RleHRyZWdpb246NDI4NmM0YWQ0MWRmNDRlYjkzMDE0MmRkZmMwYzc5NWNfOTAzOA_fba48fa5-07e4-40d8-8252-66851770d4be"
      unitRef="usd">801000</efoi:GainLossOnForgivenessOfDebt>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfMTk2MQ_f6641989-2b0d-441f-bd2f-518b21a2e21f">INCOME TAXES&lt;div style="margin-bottom:10pt;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 and nine months ended September&#160;30, 2022 and 2021, 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="margin-bottom:10pt;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 September&#160;30, 2022 and December&#160;31, 2021, we had a full valuation allowance recorded against our deferred tax assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt;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="margin-bottom:10pt;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, 2021, we had a net operating loss carry-forward of approximately $125.4 million for federal income tax purposes ($77.2 million for state and local income tax purposes). However, due to changes in our capital structure, approximately $71.0 million of the $125.4 million is available to offset future taxable income after the application of the limitations found under Section 382 of the Internal Revenue Code of 1986, as amended. 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 $9.6 million and $7.1 million in federal net operating losses generated in 2021 and 2020, 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.5 million will begin to expire in 2023 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 11, &#x201c;Income Taxes,&#x201d; included under Item 8, &#x201c;Financial Statements and Supplementary Data,&#x201d; of our 2021 Annual Report.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i617257e7faeb4beca533ed983b2f58d4_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfODMz_4ac0e64c-3257-4a3b-a035-6755edd4a881"
      unitRef="usd">125400000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i0323c9f2e709499388c55edfd47a2d07_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfODY5_042ed2f5-80e5-4494-b414-78fef6d0050c"
      unitRef="usd">77200000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <efoi:DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations
      contextRef="i617257e7faeb4beca533ed983b2f58d4_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfOTc4_40881f86-4e4d-4d74-aa1c-cb2eaed2de81"
      unitRef="usd">71000000</efoi:DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i617257e7faeb4beca533ed983b2f58d4_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfOTg4_4ac0e64c-3257-4a3b-a035-6755edd4a881"
      unitRef="usd">125400000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfMTM5MQ_ec47454d-b568-4727-91c2-afe66eb747f6"
      unitRef="usd">9600000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i665a74c29f70404086fd8174e737d9ae_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfMTM5OA_e2b43443-2dab-419f-b4bb-d603f7e0574b"
      unitRef="usd">7100000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182MS9mcmFnOmVhNDZiNjBhZGFkMDQ0NTFhMDMxMGYwZDBjZGU4ZjkyL3RleHRyZWdpb246ZWE0NmI2MGFkYWQwNDQ1MWEwMzEwZjBkMGNkZThmOTJfMTYwNQ_dd2e9cb4-731f-4cd9-804b-3e4cb714625a"
      unitRef="usd">37500000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration>
    <us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTEwOTU_2bed0daa-b7e9-4a33-8167-38daf9f47a5b">STOCKHOLDERS&#x2019; EQUITY&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;June 2022 Private Placement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2022, we completed the June 2022 Private Placement with certain institutional investors for the sale of 1,313,462 shares of our common stock at a purchase price of $1.30 per share. We also sold to the same institutional investors (i) June 2022 Pre-Funded Warrants to purchase 1,378,848 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants to purchase up to an aggregate of 2,692,310 shares of common stock at an exercise price of $1.30 per share. In connection with the June 2022 Private Placement, we paid the placement agent commissions of $252&#160;thousand, plus $35&#160;thousand in expenses, and we also paid legal, accounting and other fees of $47&#160;thousand. Total offering costs of $334&#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 September&#160;30, 2022. Net proceeds to us from the June 2022 Private Placement were approximately $3.2 million. We determined the exercise price of the June 2022 Pre-Funded Warrants to be nominal and, as such, have considered the 1,378,848 shares underlying them to be outstanding effective June 7, 2022, for purposes of calculating net loss per share. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In July 2022, all of the June 2022 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, June 2022 Warrants to purchase an aggregate of 2,692,310 shares remained outstanding, with a weighted average exercise price of $1.30 per share.  The exercise of the remaining June 2022 Warrants outstanding could provide us with cash proceeds of up to $3.5 million in the aggregate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;December 2021 Private Placement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2021, we completed the December 2021 Private Placement with certain institutional investors for the sale of 1,193,185 shares of our common stock at a purchase price of $3.52 per share. We also sold to the same institutional investors (i) December 2021 Pre-Funded Warrants to purchase 85,228 shares of common stock at an exercise price of $0.0001 per share and (ii) warrants to purchase up to an aggregate of 1,278,413 shares of common stock at an exercise price of $3.52 per share. In connection with the December 2021 Private Placement, we paid the placement agent commission of $360&#160;thousand plus $42&#160;thousand in expenses and we also paid legal, accounting and other fees of $97&#160;thousand. Total offering costs of $499&#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, 2021. Net proceeds from the December 2021 Private Placement were approximately $4.0 million. We determined the exercise price of the December 2021 Pre-Funded Warrants to be nominal and, as such, considered the 85,228 shares underlying them to be outstanding effective December 16, 2021, for purposes of calculating net loss per share.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; In January 2022, all of the December 2021 Pre-Funded Warrants were exercised. As of September&#160;30, 2022, December 2021 Warrants to purchase an aggregate of 1,278,413 shares remained outstanding, with an exercise price of $3.52 per share. The December 2021 Warrants expire on December&#160;16, 2026. The exercise of the remaining December 2021 Warrants outstanding could provide us with cash proceeds of up to $4.5 million in the aggregate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;June 2021 Equity Offering&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 2021, we completed a registered direct offering of 990,100 shares of our common stock to certain institutional investors, at a purchase price of $5.05 per share. We paid the placement agent commissions of $400 thousand, plus $51 thousand in expenses, in connection with the June 2021 Equity Offering and we also paid legal and other fees of $18 thousand. Total offering costs of $469 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, 2021. Net proceeds to us from the June 2021 Equity Offering were approximately $4.5 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 31, 2020, 111,548 shares of the Series A Preferred Stock were converted into 22,310 shares of common stock. During the year ended December 31, 2021, 1,721,023 shares of Series A Preferred Stock were converted into 344,205 shares of common stock. The Series A Preferred Stock that was converted in 2021 was held by a Schedule 13D ownership group (under Section 13(d)(3) of the Securities Exchange Act of 1934, as amended, and Rule 13d-5 promulgated thereunder) that includes Fusion Park LLC (&#x201c;Fusion Park&#x201d;) and 5 Elements Global Fund L.P. (controlled affiliates of James Tu, the Company's former Executive Chairman and Chief Executive Officer), as well as Brilliant Start Enterprise Inc. (&#x201c;Brilliant Start&#x201d;) and Jag International Ltd. (controlled affiliates of Gina Huang, a member of the Company's board of directors). Upon 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;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;January 2020 Equity Offering&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;Issuance of Common Stock and Warrants&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&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, the Investor 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 31, 2021. 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 January 2020 Warrants were approximately $2.3 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;January 2020 Warrants issued to purchase an aggregate of 229,414 shares remain outstanding at September&#160;30, 2022 with a weighted average exercise price of $3.67 per share. The exercise of warrants could provide us with cash proceeds of up to $0.8 million in the aggregate if all warrants are exercised. During the nine months ended September 30, 2022, no January 2020 Warrants were exercised. During the nine months ended September 30, 2021, 156,446 warrants were exercised resulting in total proceeds of $527&#160;thousand.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 September&#160;30, 2022 and 2021, we had the following outstanding January 2020 warrants to purchase shares of common stock:&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:31.482%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.116%"/&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.266%"/&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.266%"/&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.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: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;As of September&#160;30, 2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;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;As of September&#160;30, 2021&lt;/span&gt;&lt;/div&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;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;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;187,734&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:right;vertical-align: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:right;vertical-align: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;229,414&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-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 style="margin-bottom:10pt"&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;Warrant Classification&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 condensed 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 style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Stock-based compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.200%"/&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.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.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.767%"/&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;September 30,&lt;/span&gt;&lt;/td&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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;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;2022&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;2021&lt;/span&gt;&lt;/td&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;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;&#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: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;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;7&#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 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;4&#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;2&#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;16&#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;10&#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: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;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;35&#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;97&#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;370&#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 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;17&#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;39&#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;115&#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;387&#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;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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.2 million at September&#160;30, 2022, compared to $0.3 million at September&#160;30, 2021. 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 September&#160;30, 2022 is expected to be recognized is approximately 2.5 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;2021&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;0.77&#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;4.18&#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;0.95&#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;5.39&#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.1&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.2&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;3.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.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;/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;104.0&#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;96.5&#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="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 nine months ended September 30, 2022 is presented as follows:&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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;267,109&#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.46&#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;226,820&#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;0.95&#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;Exercised&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;(250)&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.45&#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;Canceled/forfeited&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;(135,447)&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;3.03&#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;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 September 30, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;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;358,064&#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 #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;2.03&#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 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.2&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 September 30, 2022&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;291,379&#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;2.21&#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;7.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;Exercisable at September 30, 2022&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;118,920&#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;3.21&#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;5.6&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="18" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 nine months ended September 30, 2022 is presented as follows:&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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;2,400&#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;7.14&#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;40,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;1.40&#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;(40,800)&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.51&#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 September 30, 2022&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;1,600&#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;7.14&#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;7.9&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:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTc0_1b73b551-ee21-4391-a220-60c9dcdc492b"
      unitRef="shares">1313462</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="ib6093e256b84497da804afffdc20ab61_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjI3_f2f3d06c-77f8-44ac-a07b-913a16c1c076"
      unitRef="usdPerShare">1.30</us-gaap:SaleOfStockPricePerShare>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzM2_b89bff43-350e-46b5-b4c5-c55a8fdea448"
      unitRef="shares">1378848</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzg2_377d8e46-f153-4e78-97d4-451669ca2b37"
      unitRef="usdPerShare">0.0001</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDUx_88b7c47f-7261-4d0b-b92a-316bdada04f7"
      unitRef="shares">2692310</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i8c747e25a2454c6aa8619d9f5fb4d2e7_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTAx_a6593163-2265-45e7-9e16-e0a2d0199df4"
      unitRef="usdPerShare">1.30</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjEw_c79454a2-c4cf-4493-8af7-6e99d723d138"
      unitRef="usd">252000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjE5_61f943b2-0447-42ee-9a1c-9307a5fff010"
      unitRef="usd">35000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjg4_6910677c-2cb5-4e7d-a491-ee1050fb22c0"
      unitRef="usd">47000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzE2_47d40fd3-dc07-4488-a36d-bfe9b4b0fa39"
      unitRef="usd">334000</us-gaap:PaymentsOfStockIssuanceCosts>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="i2d5bd2cc023f4445b580b4837a43a0be_D20220601-20220630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfOTQ4_762dce1a-5291-44b4-b753-9a4eaf730ea5"
      unitRef="usd">3200000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i39cef58f6ce245ceb3e58ca2aa026921_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTA3MA_b89bff43-350e-46b5-b4c5-c55a8fdea448"
      unitRef="shares">1378848</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="ib6093e256b84497da804afffdc20ab61_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTQ5NzU1ODI0OTkz_40cdfaba-422c-498a-aab7-0b706e51f755"
      unitRef="shares">2692310</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ib6093e256b84497da804afffdc20ab61_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTMxOA_b6935464-1186-409c-952b-1752cf63faa9"
      unitRef="usdPerShare">1.30</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:EstimatedProceedsFromIssuanceOfWarrants
      contextRef="icbe2c1b605284d9ea336fc4b0c5b94b6_D20220701-20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTUwOQ_2ddf4016-2e7e-4d2d-abad-7d18c0a64551"
      unitRef="usd">3500000</efoi:EstimatedProceedsFromIssuanceOfWarrants>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTY4Mg_09c512ba-a810-4675-a0b2-5bf3014aa789"
      unitRef="shares">1193185</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i9ce48cbac2a74e9d94e19ade81ea2ba2_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTczNQ_bf802b5e-45e1-44b6-81f3-5a2a0f2e4dea"
      unitRef="usdPerShare">3.52</us-gaap:SaleOfStockPricePerShare>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i8ddadf8727d94cc6b7723121484c1cd6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTg0OA_0ddbe389-3fa1-49c1-9383-b371a1ea1c57"
      unitRef="shares">85228</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i8ddadf8727d94cc6b7723121484c1cd6_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTg5OA_9e931271-66cf-4634-a9ac-ffb14ad3e5b4"
      unitRef="usdPerShare">0.0001</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTk2Mw_f9957170-a9fc-456e-b307-eea0d6499822"
      unitRef="shares">1278413</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i9ed0abc9a318411b9241b1ff89dcc8d8_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjAxMw_26146e18-3f69-4552-81fb-4ca7bf24d801"
      unitRef="usdPerShare">3.52</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjEyNQ_865e87c5-0b7a-4891-ade2-b1da598d50d9"
      unitRef="usd">360000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjEzMw_9ae57c64-ab1b-4835-82f4-7fb2258a8a7b"
      unitRef="usd">42000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjIwMQ_0919f815-bead-4e24-969c-1ad66bd6aa4f"
      unitRef="usd">97000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjIyOQ_d2a22f4d-2ad3-4595-840d-e71e12aacd13"
      unitRef="usd">499000</us-gaap:PaymentsOfStockIssuanceCosts>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="ic34dc19b4d8049738202fbd33a810a58_D20211201-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjQ1OQ_399e7735-23f7-42e1-a08d-dea0c05ff5d0"
      unitRef="usd">4000000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i748bb2380fea4959930dec8b4d178b77_D20211216-20211216"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjU4MA_40409803-3509-4b5a-b12e-70afca67f8dc"
      unitRef="shares">85228</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i767ac6894c76456c8094aa95c522cc82_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjg0MQ_0cb42817-2ec3-4463-bcd7-17242d5658d4"
      unitRef="shares">1278413</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i767ac6894c76456c8094aa95c522cc82_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMjg5OQ_df84d91c-df5b-43d8-b11d-00e84ada4010"
      unitRef="usdPerShare">3.52</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:EstimatedProceedsFromIssuanceOfWarrants
      contextRef="i81f0616158c84d3fb1b6440205bf4b1f_D20220701-20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzA2NA_c0a60090-72f0-4b4c-a7a4-fd138da6f828"
      unitRef="usd">4500000</efoi:EstimatedProceedsFromIssuanceOfWarrants>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzE3MA_281337d8-6943-4320-a915-e22fd24ddc16"
      unitRef="shares">990100</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i0faf6b8b75e64d60b8cca4f20ea1033d_I20210630"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzI1OQ_871e5d86-a65f-410b-95ad-81ba34f6d481"
      unitRef="usdPerShare">5.05</us-gaap:SaleOfStockPricePerShare>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzMxNg_be69806d-0c0a-4b6e-8964-20111804e632"
      unitRef="usd">400000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzMyNQ_c6eb6022-2291-4d59-9d0d-a7fb60236e37"
      unitRef="usd">51000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="ie0406c176cd64530aa241398cd71c792_D20210601-20210630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzQzMQ_12331ab7-6452-4c27-b6a3-117a829e95b2"
      unitRef="usd">18000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i12d643b8880e4367bc65f29dd3283f8b_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzQ1OQ_b60c8499-82a5-4cdd-8d1f-1b8f9c9150e9"
      unitRef="usd">469000</us-gaap:PaymentsOfStockIssuanceCosts>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="i803858905eea49ee98bcb1ed96afdb26_D20210601-20210630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMzY4OQ_657825aa-f5f7-422b-9072-c09e424174a9"
      unitRef="usd">4500000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock
      contextRef="if941b58136404dd4b535ca1bc12bedb8_D20200116-20200116"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDAwMg_5eb2a97e-92e9-4e36-b762-fbf9b5e8240d"
      unitRef="usd">1800000</efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i7343d6d5c7c048638231d8662dbd503d_I20200116"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDA0Ng_656dcbe4-9723-4400-9f3e-215fc9ce19ec"
      unitRef="usdPerShare">0.67</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="if941b58136404dd4b535ca1bc12bedb8_D20200116-20200116"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDA4MA_97627fad-42c6-40eb-9121-98184d75b746"
      unitRef="shares">2709018</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="iefd5eddb0814490fbd704f2c74f89146_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDI1Mg_0921675d-989e-4d92-82ce-5d36cf3261ed"
      unitRef="shares">111548</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="i7219bd37e0e6448194c0a85983fa741e_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDMxNA_4a42e189-a4fb-46c0-869d-dab74a2c34a8"
      unitRef="shares">22310</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="i89f85dc38f7d456ba4d0a27b9e8c44d5_D20220101-20220331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDM4Mg_f5c902b6-de67-4bb5-9e58-af9a69fbac9d"
      unitRef="shares">1721023</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="ib271d367f3b04cd99dca3bb663f64887_D20220101-20220331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNDQ0MA_6827c163-b0e9-43e3-b429-dd17244f6aa8"
      unitRef="shares">344205</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion
      contextRef="iceb133a95ec34a90beb603793c0c1a16_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTE1Mw_fe9186a5-edb8-4470-ac54-91ac6f3fa0b3"
      unitRef="shares">184851</us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion>
    <us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion
      contextRef="i09164e6fe4e24b1aad0d2a0cb0b3971e_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTE2MA_b6f8672c-668c-440b-b90d-1bcd30ad5f72"
      unitRef="shares">159354</us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i3a1985fdb73c40eab7774a091c39b414_I20190329"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTM5Mw_7c9a3649-55a4-4dc6-9cad-d3ff14c66b0e"
      unitRef="shares">2000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i3a1985fdb73c40eab7774a091c39b414_I20190329"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTQ0Nw_1adaffff-dfad-46af-8939-f07d50a9e89f"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i0f75433f2ab04afc9e0f49ca98b865a5_I20200115"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTcxNQ_d94a6e78-1a8f-4ff5-84aa-26e91f97f62c"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i8db87dbfef0c4d6285dee961db52fe03_I20200115"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNTkwMA_febdb054-5fec-4c8f-9004-a5333cf5da62"
      unitRef="shares">3300000</us-gaap:PreferredStockSharesAuthorized>
    <efoi:PercentageOfSeriesAPreferredStockEligibleToVote
      contextRef="i91458235d2144bf784b39565efa69ba2_D20200116-20200116"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjQ5MQ_503915d2-1187-4363-a484-dacf83bf569e"
      unitRef="number">0.1107</efoi:PercentageOfSeriesAPreferredStockEligibleToVote>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i7343d6d5c7c048638231d8662dbd503d_I20200116"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNjY3Ng_656dcbe4-9723-4400-9f3e-215fc9ce19ec"
      unitRef="usdPerShare">0.67</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzY3OA_c5ee9f9a-080d-4220-9d83-6034254ddf74"
      unitRef="shares">688360</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i75c44893e522482d9da770d544c0738f_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzc2Nw_860ce0fc-d93e-4b97-8677-feff7e904b7c"
      unitRef="usdPerShare">3.37</us-gaap:SaleOfStockPricePerShare>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="i75c44893e522482d9da770d544c0738f_I20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzg3Mg_86174388-5a91-4250-a5ab-93e3f82c76a2"
      unitRef="shares">688360</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="if6df7ef067004660ab3ca010df7407c3_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzkyMg_243ba911-df0c-4f6a-b851-d20b71969036"
      unitRef="usdPerShare">3.37</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare
      contextRef="ia9b9cbc896e048a68a29b367c8a21e88_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfNzk5Mw_d78276ba-7620-4b31-903b-119cd8171c42"
      unitRef="usdPerShare">0.625</efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODA1Mg_6ca12d01-f32f-48ef-add0-7c98891fec22"
      unitRef="usd">193000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODA2MQ_94254baf-2b4b-4a8e-8f6a-8c82d5bad441"
      unitRef="usd">50000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODIxNw_5b844684-2866-41d0-8dc4-f3d80a31e381"
      unitRef="usd">231000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="ib0bd1c8c0ccc4c3c9f0db9404c231979_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODI2OQ_6b3b2466-eb04-4515-b406-47538fe61fee"
      unitRef="usd">510000</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights
      contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODUxNA_a6715f94-7ef1-4a49-b855-d472e77652f3"
      unitRef="shares">48185</us-gaap:ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODU2NA_5ad13216-d38d-48b1-b735-52f8e023e59d"
      unitRef="usdPerShare">4.99</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="i48f6b53a2d8942f8b486fea942de2bf5_D20200101-20200131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODY3Mg_10d102c0-3dee-4761-9ff2-a0ec02819b3e"
      unitRef="usd">2300000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i4a27914cc205482c8bd58c311de25f66_D20220701-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODczMw_88815a4a-e987-4324-a476-0e6d064dbd5d"
      unitRef="shares">229414</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i11a6b7ac29a64570a16688c65c0b2098_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODgxMA_7d70fb58-ee6c-4225-8845-d103b9987540"
      unitRef="usdPerShare">3.67</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:EstimatedProceedsFromIssuanceOfWarrants
      contextRef="ife2256486c774b86ada936065734d99d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODg5NA_85637264-8790-4427-901c-adc65b6bbeda"
      unitRef="usd">800000</efoi:EstimatedProceedsFromIssuanceOfWarrants>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="ife2256486c774b86ada936065734d99d_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfODk2MA_64823742-5811-489e-860b-f6930b3bf724"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="i06883d1c8c934bbb8b0580de82e8da76_D20210101-20210930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfOTAxNQ_fe91fa20-fbd4-4c81-a511-d2dde7f22ee0"
      unitRef="shares">156446</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfOTA3Mw_9fff75e3-f16d-4211-ad76-cd5ee38586ca"
      unitRef="usd">527000</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTEwNzQ_1b3c996a-5007-4848-81c6-59e4178c74ac">&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of September&#160;30, 2022 and 2021, we had the following outstanding January 2020 warrants to purchase shares of common stock:&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:31.482%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.116%"/&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.266%"/&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.266%"/&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.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: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;As of September&#160;30, 2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;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;As of September&#160;30, 2021&lt;/span&gt;&lt;/div&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;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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;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;187,734&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:right;vertical-align: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:right;vertical-align: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;229,414&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-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;</us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="ia8c1cf4af256477a9f3312f157d59e00_D20220701-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMi0xLTEtMS03NjkxMA_0fa58b71-d4c6-4c2f-bc10-fd22247e1dcf"
      unitRef="shares">187734</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i7b877e19c76246d8bd05cd62af67b8a9_D20210701-20210930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMi0zLTEtMS03NjkxMA_f0d69400-8949-4965-8cf9-34dfc55ae932"
      unitRef="shares">269180</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i75c44893e522482d9da770d544c0738f_I20200131"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMi01LTEtMS03NjkxMA_64c17a30-ad3a-440e-b9f8-a676ed3b9581"
      unitRef="usdPerShare">3.3700</us-gaap:SaleOfStockPricePerShare>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i442abdaea1d04ae9bdd98e8d7dece558_D20220701-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMy0xLTEtMS03NjkxMA_c1e043f7-04b4-45c1-8a9a-a56e5f45c35f"
      unitRef="shares">41680</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i39bebab66ddb43608243763645f6ca3d_D20210701-20210930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMy0zLTEtMS03NjkxMA_76a1ebcc-7710-481d-8fee-ad89bc2f325e"
      unitRef="shares">41680</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ieaa31e67c19d4a1abf7787241d1751d0_I20200131"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfMy01LTEtMS03NjkxMC90ZXh0cmVnaW9uOjBjMmQzMjg2YWFiNDRjMmM4NzE1NjY1Mzc0MjY0OTEzXzQ_3d8d81e1-c06d-42b1-955d-c48e135b2c2f"
      unitRef="usdPerShare">4.9940</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i4a27914cc205482c8bd58c311de25f66_D20220701-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfNC0xLTEtMS03NjkxMA_2a0a7fac-c1d5-4da5-8b7e-04a89e497723"
      unitRef="shares">229414</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="ic8492b48531b4b3cabdd6d3da9335a79_D20210701-20210930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjJkMTNiNTA4ZmQ4OTQ3MTJhODk2Y2FiZDM1NDc1NTM5L3RhYmxlcmFuZ2U6MmQxM2I1MDhmZDg5NDcxMmE4OTZjYWJkMzU0NzU1MzlfNC0zLTEtMS03NjkxMA_22b35609-735d-49ac-8aec-a14bc30d28ff"
      unitRef="shares">310860</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTExMDE_f2982854-28d8-417a-bd46-b7748456d1ec">&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;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:49.200%"/&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.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.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.767%"/&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;September 30,&lt;/span&gt;&lt;/td&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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;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;2022&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;2021&lt;/span&gt;&lt;/td&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;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;&#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: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;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;7&#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 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;4&#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;2&#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;16&#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;10&#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: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;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;35&#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;97&#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;370&#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 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;17&#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;39&#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;115&#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;387&#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;/table&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ia5a502486aba455ebed2e3223c3362a0_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMi0xLTEtMS03NjkxMA_2dbe632f-1f20-46d3-8a73-776de93ad00c"
      unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i23d7b0e9696d4a529a7dcd257570a4fb_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMi0zLTEtMS03NjkxMA_721770d3-fe74-42cd-89f7-54831cdf63f9"
      unitRef="usd">2000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ideff6cde4d7b407386a6407f451b309d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMi01LTEtMS03NjkxMA_bb247e52-e39a-4830-a13e-e3731c5ececc"
      unitRef="usd">2000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="id89dc8d72db14b00ac47698037f60b6f_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMi03LTEtMS03NjkxMA_c07deabd-7ffa-48f1-b499-b09bebf3398e"
      unitRef="usd">7000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i3b21fc5eda514b8badcc6afdeebf4f09_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMy0xLTEtMS03NjkxMA_11891ad6-cf41-4a1c-97d8-494b55f2bb72"
      unitRef="usd">4000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ib6ec7d497d754f3499b69d7e7f71ba80_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMy0zLTEtMS03NjkxMA_e4fe5258-ca04-41bc-9014-516317c76db9"
      unitRef="usd">2000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="idf9b91958ac74d2ba2d17c5d5094693f_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMy01LTEtMS03NjkxMA_f5cd3485-dc4b-4b06-9d6c-2e0812948940"
      unitRef="usd">16000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="if76c9109bee6465395764fb4affa8ad3_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfMy03LTEtMS03NjkxMA_c5476d4f-45e2-44d8-b032-a096418817b1"
      unitRef="usd">10000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ibac8b1f026a84b7b9acd8bc716fb5ba6_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNC0xLTEtMS03NjkxMA_dd7d8cbb-4b31-4e1d-ae80-ad94bc764506"
      unitRef="usd">13000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i38d603fde1ae40219a02697631cdc470_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNC0zLTEtMS03NjkxMA_c5df7c48-95bb-4063-8245-6abea2d04d16"
      unitRef="usd">35000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="id5d44e14724b473083ad6434de1ccffc_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNC01LTEtMS03NjkxMA_b66762b7-99a5-49c4-99f3-735b44ae357c"
      unitRef="usd">97000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ia7aa25b3113e426998f8d7cacbbbd50c_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNC03LTEtMS03NjkxMA_df6701d0-b22b-417a-a9a1-0e469931a8df"
      unitRef="usd">370000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNS0xLTEtMS03NjkxMA_98aaa766-5b52-422e-8d93-a34fb7909c82"
      unitRef="usd">17000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNS0zLTEtMS03NjkxMA_44415b07-c4d8-40fe-9920-4653f4be8c51"
      unitRef="usd">39000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNS01LTEtMS03NjkxMA_68dcccb4-1141-43f3-a6e5-142d36871210"
      unitRef="usd">115000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i46aa286ee6f94a8c826636eb6de0fcdd_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjA4MGNjNjE5YTJkNjQ4Nzk5YzJlNTA2YjBkZmI1ZWEyL3RhYmxlcmFuZ2U6MDgwY2M2MTlhMmQ2NDg3OTljMmU1MDZiMGRmYjVlYTJfNS03LTEtMS03NjkxMA_5198ae8f-be8a-4053-b394-f55daf753bf3"
      unitRef="usd">387000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTAyNjk_2d7425f3-00fd-4951-97cd-2f39206ac53a"
      unitRef="usd">200000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i0c342207ebd74923bd8a639b59b00f4f_I20210930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTAyOTE_5f5ffd40-3d16-4a05-b9f4-00e42aadeb4d"
      unitRef="usd">300000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTA1MTU_1f2033e1-30bc-4b73-bf77-89f17d273da3">P2Y6M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTExMDI_0cc6c8c9-5020-458a-ab0b-19ce141bd732">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;margin-bottom:5pt;vertical-align:text-bottom;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;Nine months ended&lt;br/&gt;September 30,&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;2022&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;2021&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;0.77&#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;4.18&#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;0.95&#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;5.39&#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.1&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.2&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;3.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.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;/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;104.0&#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;96.5&#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="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i3907598e54964033bfdff8d85a946082_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfMi0xLTEtMS03NjkxMA_73a2a400-44e2-4b5a-981c-3fb97e47d919"
      unitRef="usdPerShare">0.77</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfMi0zLTEtMS03NjkxMA_5e9094a5-2692-40e2-a40b-373fda3121dc"
      unitRef="usdPerShare">4.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice
      contextRef="i1b2deadd99aa4fffa0a17c415fc8f198_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfMy0xLTEtMS03NjkxMA_01260e1a-0faf-4c12-8503-e6966a65302e"
      unitRef="usdPerShare">0.95</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice
      contextRef="i6903be08e4a8455297987e3aa2b285cf_I20210930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfMy0zLTEtMS03NjkxMA_fd916e38-33c9-4265-bd6c-5137c810c8f5"
      unitRef="usdPerShare">5.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i3907598e54964033bfdff8d85a946082_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNC0xLTEtMS03NjkxMA_b417ef05-677e-477c-b9fa-9c14fa14d67c">P6Y1M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNC0zLTEtMS03NjkxMA_4cb59eb3-2529-4b01-8da2-ba680fbfbf91">P6Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i3907598e54964033bfdff8d85a946082_D20220101-20220930"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNS0xLTEtMS03NjkxMA_a4eac489-82d4-48e2-815e-c44b70cbf00c"
      unitRef="number">0.030</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNS0zLTEtMS03NjkxMA_9aec8aee-e825-4519-9e53-6de34d1f721f"
      unitRef="number">0.008</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i3907598e54964033bfdff8d85a946082_D20220101-20220930"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNi0xLTEtMS03NjkxMA_9279b189-8d2b-4101-b74b-7bcb4cd839cc"
      unitRef="number">1.040</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNi0zLTEtMS03NjkxMA_5cd600a9-7fdc-4d9e-8e7f-b791ece14582"
      unitRef="number">0.965</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i3907598e54964033bfdff8d85a946082_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNy0xLTEtMS03NjkxMA_a7772cb0-0429-4ef4-b2ed-9c53fe317138"
      unitRef="number">0.000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i43454483f16741ef8b685e3c48ee93cd_D20210101-20210930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjY0MWM3MDI4YWI3ODQxZTBhMDNiMDcxZTdlZjExZjM3L3RhYmxlcmFuZ2U6NjQxYzcwMjhhYjc4NDFlMGEwM2IwNzFlN2VmMTFmMzdfNy0zLTEtMS03NjkxMA_0aba6772-b379-46c5-9f3a-e3be5abc0f6a"
      unitRef="number">0.000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTEwODI_7d3cf764-be28-4c47-bf9a-876451eee442">&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 nine months ended September 30, 2022 is presented as follows:&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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;267,109&#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.46&#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;226,820&#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;0.95&#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;Exercised&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;(250)&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.45&#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;Canceled/forfeited&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;(135,447)&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;3.03&#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;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 September 30, 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;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;358,064&#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 #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;2.03&#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 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.2&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 September 30, 2022&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;291,379&#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;2.21&#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;7.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;Exercisable at September 30, 2022&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;118,920&#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;3.21&#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;5.6&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="18" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMS0xLTEtMS03NjkxMA_0b79d7c8-a2f7-41b9-bd6f-f03ba6d88a6e"
      unitRef="shares">267109</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMS0zLTEtMS03NjkxMA_03b9ed86-8eb7-486b-bea1-8a6146aac340"
      unitRef="usdPerShare">3.46</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMi0xLTEtMS03NjkxMA_f118ddac-81f7-4534-8eda-de03dba34233"
      unitRef="shares">226820</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMi0zLTEtMS03NjkxMA_de2c13cc-ad60-4038-81d4-6824826f4b53"
      unitRef="usdPerShare">0.95</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMy0xLTEtMS03NjkxMA_ede0e124-2ae8-45bd-a4d1-3f500f5d7f1c"
      unitRef="shares">250</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMy0zLTEtMS03NjkxMA_17286530-8712-43ee-8bd4-da63417162b8"
      unitRef="usdPerShare">1.45</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNC0xLTEtMS03NjkxMA_0fcb1fc7-07f1-4486-aa83-84abf3a47f04"
      unitRef="shares">135447</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNC0zLTEtMS03NjkxMA_1059ce61-896e-4319-b14f-09a7ae25778c"
      unitRef="usdPerShare">3.03</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNi0xLTEtMS03NjkxMA_8df2a879-4576-485a-aee0-cbceabf3fef6"
      unitRef="shares">358064</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNi0zLTEtMS03NjkxMA_079e08b8-f457-4e7c-9f73-d5833e2187a0"
      unitRef="usdPerShare">2.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfNi01LTEtMS03NjkxMA_ea8d0fb0-7b86-42b5-9b2d-0d37ed2a8d58">P8Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfOC0xLTEtMS03NjkxMA_11aad14f-8492-4795-a980-826ed060ec89"
      unitRef="shares">291379</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfOC0zLTEtMS03NjkxMA_2dd834ad-f9cb-4d78-9e59-54ba507112e3"
      unitRef="usdPerShare">2.21</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfOC01LTEtMS03NjkxMA_e9f60d4d-0eca-4d61-be29-11041971db92">P7Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMTAtMS0xLTEtNzY5MTA_87a74103-38bc-4365-97dd-cc911515c581"
      unitRef="shares">118920</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMTAtMy0xLTEtNzY5MTA_d8ce9369-6dc7-4c7d-814a-866e05277a59"
      unitRef="usdPerShare">3.21</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjhlMTllNGYxMjhiNjQ4MDhiMDJmMjk5YThjNjhjNjFlL3RhYmxlcmFuZ2U6OGUxOWU0ZjEyOGI2NDgwOGIwMmYyOTlhOGM2OGM2MWVfMTAtNS0xLTEtNzY5MTA_151560d9-b78a-4238-ad55-84a8f6d3f3da">P5Y7M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RleHRyZWdpb246NjlmYjM3Njk1ZmY2NGNjMDk4ZGYwODBhZjJhODI4NjlfMTEwOTE_7b35d19c-6c3e-471d-8d04-3ded0e8dc499">&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 nine months ended September 30, 2022 is presented as follows:&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;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, 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;2,400&#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;7.14&#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;40,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;1.40&#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;(40,800)&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.51&#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 September 30, 2022&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;1,600&#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;7.14&#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;7.9&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;</us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="ie4c9f0482b664da7bec8b76bf482f1c1_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMS0xLTEtMS03NjkxMA_870c9fad-f1a9-429c-aa24-f86c527ea886"
      unitRef="shares">2400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ie4c9f0482b664da7bec8b76bf482f1c1_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMS0zLTEtMS03NjkxMA_d67bc325-67f2-45c9-9bfc-276d883cb4d9"
      unitRef="usdPerShare">7.14</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ia3b35a926924443c945b946003d4ba41_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMi0xLTEtMS03NjkxMA_4f722396-fe50-4dda-8f6b-8cc990ca4b85"
      unitRef="shares">40000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia3b35a926924443c945b946003d4ba41_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMi0zLTEtMS03NjkxMA_26bc29b5-43a0-47cd-8263-6d635d339e0a"
      unitRef="usdPerShare">1.40</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ia3b35a926924443c945b946003d4ba41_D20220101-20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMy0xLTEtMS03NjkxMA_5247c41d-3232-4634-a5a0-86f98bc1eccb"
      unitRef="shares">40800</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia3b35a926924443c945b946003d4ba41_D20220101-20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfMy0zLTEtMS03NjkxMA_f5ab4a7c-9434-46ca-b5d1-48eb07ac215a"
      unitRef="usdPerShare">1.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="ib3fb6995edf04fadb00176f749207754_I20220930"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfNS0xLTEtMS03NjkxMA_930d6b55-7340-4ac4-873a-59a74b89e920"
      unitRef="shares">1600</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ib3fb6995edf04fadb00176f749207754_I20220930"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfNS0zLTEtMS03NjkxMA_04ea9769-8593-4ddd-b20a-ee10e57fd843"
      unitRef="usdPerShare">7.14</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ia3b35a926924443c945b946003d4ba41_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M182NC9mcmFnOjY5ZmIzNzY5NWZmNjRjYzA5OGRmMDgwYWYyYTgyODY5L3RhYmxlOjdmMTQ0YzRjYzcyMzQ0ZjJiNjUzYjAzMTAzNzM3ODc0L3RhYmxlcmFuZ2U6N2YxNDRjNGNjNzIzNDRmMmI2NTNiMDMxMDM3Mzc4NzRfNS01LTEtMS03NjkxMA_0f83eafa-de9c-4774-9eeb-7e59d4857f68">P7Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183MC9mcmFnOjFmZjYzOGQzNGQ5YTQ0YTliMTQwZTQ3N2Y3YjU5NDk5L3RleHRyZWdpb246MWZmNjM4ZDM0ZDlhNDRhOWIxNDBlNDc3ZjdiNTk0OTlfMjEz_93f8b534-b7a6-4c88-8415-ad5bd0d2ec20">COMMITMENTS AND CONTINGENCIES&lt;div style="margin-bottom:10pt"&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 style="margin-bottom:10pt"&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 September&#160;30, 2022, we had approximately $1.0&#160;million in outstanding purchase commitments for inventory, of which $0.8&#160;million is expected to ship in the fourth quarter of 2022 and $0.2&#160;million is expected to ship in the first quarter of 2023 and beyond.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:PurchaseObligation
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183MC9mcmFnOjFmZjYzOGQzNGQ5YTQ0YTliMTQwZTQ3N2Y3YjU5NDk5L3RleHRyZWdpb246MWZmNjM4ZDM0ZDlhNDRhOWIxNDBlNDc3ZjdiNTk0OTlfOTc_5c67983c-ab74-443b-a816-6a3a0f87c563"
      unitRef="usd">1000000</us-gaap:PurchaseObligation>
    <us-gaap:LongTermPurchaseCommitmentAmount
      contextRef="id958e8a3a7f94c5db78db2d7543b0efa_D20221001-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183MC9mcmFnOjFmZjYzOGQzNGQ5YTQ0YTliMTQwZTQ3N2Y3YjU5NDk5L3RleHRyZWdpb246MWZmNjM4ZDM0ZDlhNDRhOWIxNDBlNDc3ZjdiNTk0OTlfNTQ5NzU1ODE0MTc3_74fde70e-33b0-44ee-8387-b13223bb2796"
      unitRef="usd">800000</us-gaap:LongTermPurchaseCommitmentAmount>
    <us-gaap:LongTermPurchaseCommitmentAmount
      contextRef="ia031c454919a4e79b6e09138bcf7cda2_D20231001-20231231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183MC9mcmFnOjFmZjYzOGQzNGQ5YTQ0YTliMTQwZTQ3N2Y3YjU5NDk5L3RleHRyZWdpb246MWZmNjM4ZDM0ZDlhNDRhOWIxNDBlNDc3ZjdiNTk0OTlfNTQ5NzU1ODE0MjAx_a471db13-57d4-4bb9-b76a-250459bea866"
      unitRef="usd">200000</us-gaap:LongTermPurchaseCommitmentAmount>
    <us-gaap:OtherIncomeAndOtherExpenseDisclosureTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfMjc2Mw_d19eb45e-9839-42b0-812c-e1033200ce61">OTHER INCOME&lt;div style="margin-bottom:10pt;margin-top:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Employee Retention Tax Credit&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The CARES Act, which was enacted on March 27, 2020, provides an ERTC that is a refundable tax credit against certain employer taxes. The ERTC was subsequently amended by the Taxpayer Certainty and Disaster Tax Relief Act of 2020, the Consolidated Appropriation Act of 2021, and the American Rescue Plan Act of 2021, all of which amended and extended the ERTC availability and guidelines under the CARES Act. Following these amendments, we and other businesses became retroactively eligible for the ERTC, and as a result of the foregoing legislation, are eligible to claim a refundable tax credit against the employer share of Social Security taxes equal to 70% of the qualified wages paid to employees between January 1, 2021 and September 30, 2021. Qualified wages are limited to $10,000 per employee per calendar quarter in 2021 for a maximum allowable ERTC per employee of $7,000 per calendar quarter in 2021. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For purposes of the amended ERTC, an eligible employer is defined as having experienced a significant (20% or more) decline in gross receipts during each of the first three 2021 calendar quarters when compared with the same quarter in 2019 or the immediately preceding quarter to the corresponding calendar quarter in 2019. The credit is taken against the Company&#x2019;s share of Social Security Tax when the Company&#x2019;s payroll provider files, or subsequently amends the applicable quarterly employer tax filings.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under the amended guidelines, we are eligible to receive the ERTC for the second and third quarters of 2021. As part of the filing of our employer tax filings for the third quarter of 2021, we applied for and received a refund of $431&#160;thousand, and we amended our filing for the second quarter of 2021, for which we expect to receive an additional refund of approximately $445&#160;thousand. These amounts are recorded as other income in the Condensed Consolidated Statements of Operations during the quarter ended December&#160;31, 2021, and the $445&#160;thousand expected receivable is included in prepaid and other current assets in the Condensed Consolidated Balance Sheet as of September&#160;30, 2022 and December&#160;31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;PPP Loan&lt;/span&gt;&lt;/div&gt;On April&#160;17, 2020, the Company was granted a loan from KeyBank in the amount of approximately $795&#160;thousand, pursuant to the PPP under the CARES Act, which was enacted on March 27, 2020. The funds were received on April 20, 2020 and accrued interest at a rate of 1% per annum. 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 SBA on February 11, 2021. The $801 thousand forgiveness income was recorded as other income in the Condensed Consolidated Statements of Operations during the nine months ended September 30, 2021</us-gaap:OtherIncomeAndOtherExpenseDisclosureTextBlock>
    <efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct
      contextRef="ifd1bbf617dff477388a74c471593dff4_D20210701-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfODc5NjA5MzAyNTIyNg_e46de79a-343e-4991-a5dd-239dcb4c2ead"
      unitRef="usd">431000</efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct>
    <efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent
      contextRef="i682c94a884c54808853513b639aaddba_I20220630"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfODc5NjA5MzAyNTI0MQ_36d8f645-f3d0-41de-87ca-63e07608b91e"
      unitRef="usd">445000</efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent>
    <efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent
      contextRef="iaba68d5a70d14ff5a89c129277c344a3_I20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfODc5NjA5MzAyNTI1Ng_0e193f74-8d6f-40e3-acd4-0ee765af9767"
      unitRef="usd">445000</efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent>
    <efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent
      contextRef="iccb5853c99c2404bb5efc9cb815cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfODc5NjA5MzAyNTI1Ng_56e93467-3adf-4ef1-9043-0e5f7ad57c5d"
      unitRef="usd">445000</efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent>
    <us-gaap:ProceedsFromLoanOriginations1
      contextRef="i66532045d3ec4a78a77591cbe026cc94_D20200417-20200417"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfMjIzNQ_6b899c37-f870-4bdb-9f4c-c6ba7f23ff26"
      unitRef="usd">795000</us-gaap:ProceedsFromLoanOriginations1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i93d30f8a964643aab7ca91a6bfd8ee01_I20200417"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfMjM5Mw_9f663872-76eb-40e2-a4fa-e7f765a31a28"
      unitRef="number">0.01</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:GainLossOnForgivenessOfDebt
      contextRef="iea8d7ac65a5c4beabc4e0669316eaf21_D20210101-20210930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M183My9mcmFnOjkwZTc2NmQyYjFiNzQ1ZTNhZTQ1YWMxNjE0NTkyNzRiL3RleHRyZWdpb246OTBlNzY2ZDJiMWI3NDVlM2FlNDVhYzE2MTQ1OTI3NGJfMjY0NA_fba48fa5-07e4-40d8-8252-66851770d4be"
      unitRef="usd">801000</efoi:GainLossOnForgivenessOfDebt>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N18zODQ4MjkwNzAxNDMz_f9d20fab-0d58-4532-9237-9ac8204e585f">RELATED PARTY TRANSACTIONOn September&#160;16, 2022, we entered into the 2022 Promissory Note with Ms. Huang  in the original principal amount of $0.5 million. Ms. Huang is a member of the Company&#x2019;s board of directors. The 2022 Promissory Note is an unsecured obligation and has a maturity date of June&#160;16, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding in whole or in part at any time prior to the maturity date. Upon the occurrence of an event of default under the 2022 Promissory Note, Ms. Huang may, at her option, declare the amount outstanding under the Note immediately due and payable. After the occurrence of an event of default, Ms Huang may elect to have interest accrue on the 2022 Promissory Note at a rate per annum of 10%, or such lesser rate as permitted under applicable law. The total liability for the 2022 Promissory Note was $0.5 million at September&#160;30, 2022</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction
      contextRef="i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N181NDk3NTU4MTgzMDg_819fbd89-9dc3-4291-924c-e395c5e39321"
      unitRef="usd">500000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionRate
      contextRef="i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N181NDk3NTU4MTY0NzQ_254158d1-43de-4226-90a3-7985027b85d3"
      unitRef="number">0.08</us-gaap:RelatedPartyTransactionRate>
    <us-gaap:RelatedPartyTransactionRate
      contextRef="i2eabe6d2a37a422989c84893dd332210_D20230617-20230617"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N181NDk3NTU4MTgwOTE_2a213cd0-f0ad-494a-b63c-ae320db93215"
      unitRef="number">0.10</us-gaap:RelatedPartyTransactionRate>
    <us-gaap:DueToRelatedPartiesCurrentAndNoncurrent
      contextRef="ie76c4408e5e7447794eacfc4da73a57d_I20220930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjY1L2ZyYWc6NjQ4ODIwMzcxMWVhNDVlZjkzMzMyODU1NWYwZDMyODcvdGV4dHJlZ2lvbjo2NDg4MjAzNzExZWE0NWVmOTMzMzI4NTU1ZjBkMzI4N181NDk3NTU4MTU4OTM_ba3f7ec2-ffc7-4791-b534-114ed270c0f0"
      unitRef="usd">500000</us-gaap:DueToRelatedPartiesCurrentAndNoncurrent>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MTQyNjcx_d995cb12-d9d3-4a8d-ad79-fa66a5cfe377">SUBSEQUENT EVENTS&lt;div style="margin-bottom:10pt"&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;Unsecured Notes Payable&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On November 9, 2022, the Company issued a short-term Promissory Note in favor of Mei-Yun (Gina) Huang in the original principal amount of $350 thousand. Ms. Huang previously provided $450 thousand of bridge financing in September 2022 on the substantially the same terms.  Ms. Huang is a member of the Company&#x2019;s board of directors.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The promissory note has a maturity date of nine months from the date of issuance and bears interest at an annual rate of eight percent. The outstanding principal balance and all accrued interest thereon are due and payable at the maturity date. The Company may prepay the amounts outstanding under the note in whole or in part at any time prior to the maturity date.  Upon the occurrence of an event of default under the note, Ms. Huang may, at her option, declare the amount outstanding under the note immediately due and payable. After the occurrence of an event of default, Ms. Huang may elect to have interest accrue on the note at a rate per annum of ten percent, or such lesser rate as permitted under applicable law.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On November 4, 2022, the Company issued a short-term Promissory Note in favor of Jay Huang in the original principal amount of $250 thousand (the &#x201c;Huang Note&#x201d;). In October of 2022, Mr. Huang also provided $50 thousand of bridge financing on the substantially the same terms as the Huang Note.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Huang Note has a maturity date of nine months from the date of issuance and bears interest at an annual rate of eight percent. The outstanding principal balance and all accrued interest thereon are due and payable at the maturity date. The Company may prepay the amounts outstanding under the Huang Note in whole or in part at any time prior to the maturity date.  Upon the occurrence of an event of default under the Huang Note, Mr. Huang may, at his option, declare the amount outstanding under the Huang Note immediately due and payable. After the occurrence of an event of default, Mr. Huang &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;may elect to have interest accrue on the Huang Note at a rate per annum of ten percent, or such lesser rate as permitted under applicable law.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&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;Exchange Agreement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 10, 2022, we entered into an Exchange Agreement (the &#x201c;Exchange Agreement&#x201d;) with Streeterville, to whom we previously sold and issued the 2021 Streeterville Note.  Pursuant to the Exchange Agreement, the Company and Streeterville have agreed to (i) partition from the 2021 Streeterville Note a new Promissory Note (the &#x201c;October Partitioned Note&#x201d;) in the original principal amount of $205 thousand (the &#x201c;October Exchange Amount&#x201d;), (ii) cause the outstanding balance of the 2021Streeterville Note to be reduced by an amount equal to the October Exchange Amount, and (iii) exchange (the &#x201c;Exchange&#x201d;) the Partitioned Note for 385,918 shares (the &#x201c;October Exchange Shares&#x201d;) of the Company&#x2019;s common stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The October Exchange was each priced at-the-market under Nasdaq rules pursuant to one or more exemptions from the registration requirements of the Securities Act of 1933, as amended.  There are no gross proceeds to the Company in respect of the October Exchange, provided that the Exchange satisfied a redemption notice provided by Streeterville under the terms of the 2021 Streeterville Note, pursuant to which the Company otherwise would be required to redeem $205 thousand of the 2021 Streeterville Note in cash, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction
      contextRef="ia7a575e13a97477c95fcce5d364e94f4_D20221109-20221109"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MjYzMDk_0cc3a257-5dc0-4a51-bf5a-9e270b150b80"
      unitRef="usd">350000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="i0f027af04d83467b80f12eee9555de10_D20220901-20220930"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MjYzMjM_49d09286-3882-4eba-ae08-43a682dea64b"
      unitRef="usd">450000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction
      contextRef="icba1b582d7184316b754105405aecfd3_D20221104-20221104"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MjMyMDM_68b4b5bb-776c-402b-b357-a20b468d101b"
      unitRef="usd">250000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="ic107134d856e4cd68956b82d3af98975_D20221001-20221031"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MjMyMTY_fbb9c78a-387e-4a81-a5ca-21b3a9463ae2"
      unitRef="usd">50000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="ibf6599b235b243f6904e6a6ea6d49bc9_I20221010"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MTkxNjY_73e45cf0-a340-4138-ae61-511c3a6ad9b1"
      unitRef="usd">205000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="ic18b07c002bb481c99be9c8a3e22ef20_D20221010-20221010"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV84Nzk2MDkzMDI2MDMy_66283db5-f975-404c-8ea2-5778bdc56f9a"
      unitRef="shares">385918</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount
      contextRef="i8e1fec4673e546bba94f07db1122b8a2_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNlMzU2OTlkNjFkOTRmODRiZWI3NDcyNGY1ZjgxYTUzL3NlYzozZTM1Njk5ZDYxZDk0Zjg0YmViNzQ3MjRmNWY4MWE1M18xMjc2L2ZyYWc6ODgzYWI5OTRmYzI2NGU0M2IwNDlhZWIyNDk5N2FlZDkvdGV4dHJlZ2lvbjo4ODNhYjk5NGZjMjY0ZTQzYjA0OWFlYjI0OTk3YWVkOV81NDk3NTU4MTc5MzM_3bc418b1-38b5-4eb4-aaed-a1680ecc6e07"
      unitRef="usd">205000</efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>78
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5
MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$%     @
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
M@QI9O!3WH)HR,Q+8H<8MU-B]<[FBV0GP8F/J./1(#Y\IA/U@".&L13A[PIG
M\T(]UMYDWZJT!.95@UMR9F (?+^'TY0)HZD=)?8Z\O&<.#\"2JK2XAY"'K@8
M"4VZ9WQ]5L'-L&.;47NQVU]YBQ29#>Q2?,"7^(3%=V##EN1#XKX[;6*!/\,#
M\#H^PZ<16I;2NS1+%60B*ZOA9Z6UYQKMV.B.V+";V:[V)%+21\T@5H-]T^%Q
MW,^[%BE"_*%]WE$==G,= !05E%4'JV+%:')2W,\7%AD2#@'L> N[B:L%R.[U
M[H:L40J^!AJ&4AL>K-D 8 N9&2XU9; WD-]PQV78369[P+#B@F<[R()E=?%Z
MQPJV'F W;%*7'_?IS2(4X7@ <D=PV,UP>\B20GV#5CS/T]J_=IPF;X4&3%-F
M&@V@[+@-N\EMC_*!"D$+H) F8*T@3?(B@;%A+4*SH0W;$1QV,]PU6S/(='K1
MH>2J[/!,SNH7@181J&SMX$A':^3':.V)L"<6.HMG/:06(9\,N)%T;$;<;/8^
M+>ISWFDX3<[J;TF+R "ED8,CFI,]YG]PQ=K47M<P^D"0I+))^CKT,TX+!'7W
M/=A3MP>&,E8SUQ' *>F?=VQ2$9X-6-+Q%''SU*<F0954UV:0874&X.(1%6"B
MB[R(24O!U !M"@T<9TA'7,1-7 L(L517$P5#=UR /NQJV2["Z6ZWG+9F49\J
M+%($AT-N[\B-N,GMN%Y_:I-;*"TV4J]%*CX\Q1TC[5B-N%G-D3A:G^_M*.$T
M!RZWVF#R%_:,2L(B188LZ$B.N$G.'JQ[S#E5E6C,^;\!;)(>>+YOFBDT% H=
M,9)33GU/[1[+F2^:]EG')H6'^BFDXT0R<];^R\\?%[]^^/C;];M/RY?HW9]?
M;C[_8P7II-8?;FD]TVC'/:V.:WTWU]Z*?24@%5]]'>ODBK8TJQAZX;WQ/ \C
M""HD-U2P<W15J0WLLG]9<HZF8WBK_W8O)7KEC_WF2<)D>E_4R9I*M&2ZHX.N
M=(]T"^?J%/8VZB9>ZHE?(ZI L%0LOX/Y]BW.>G-?LU7SM.E<CM&-E+K*JKL=
ME9(*+B#LSU$<A>,@B'YD,&M/SZP6^BG,*7*\&%TYX;O+B044M1"[/[P27G\I
MGL67LS&>X3%D/L=PX=@/X_$TF&F9TUSK*G$:U[H*I6/7=E60[ZZ"KA(@XMUI
M3/?)SM("K6B90DZR@K04,$%,_'Z/Q"H7S*;^ -R#7O.31_(JKW;E3M/.XSDD
M@(W^ K0%9N/2FD!]LX@YZ_=.W#+'@+M*QW_RB-X"3N#XN$JMK3+?+%'.<!!&
M1HO4*NC'43!0#_M=.>.?4L[4,;;A6<*$?%GW^)2U%^Y;CM]3TJ^\+%(A\08J
M+[^K9WQW/6-P9AUS)T,/C<\.ME::3<S22IL<?"337RA_IP**#0F5UAKTO#<1
M&"]V'_UV-XJ7]7>S.ZX4S^O+#:, 6@O ^S6'6J>YT9_BVD^O\_\ 4$L#!!0
M   ( $Y":E5DS/QA0 ,  +4+   8    >&PO=V]R:W-H965T<R]S:&5E=#,N
M>&ULK99=;]HP%(;_BI554RMUY ,(T '22C5M%Y-0:;=KDQR(52?.; >Z_?H=
M)VF:T/"UK1?%3L[[\AS[&)_Q5L@G%0%H\ASS1$VL2.OTQK95$$%,54>DD.";
ME9 QU3B5:UNE$FB8BV)N>X[CVS%EB34=Y\_F<CH6F>8L@;DD*HMC*G_= A?;
MB>5:+P_NV3K2YH$]':=T#0O0C^E<XLRN7$(60Z*82(B$U<3ZY-[,7,\(\HCO
M#+:J-B8FE:403V;R-9Q8CB$"#H$V%A0_-C #SHT3<OPL3:WJ.XVP/GYQ_YPG
MC\DLJ8*9X#]8J*.)-;1(""N:<7TOME^@3*AO_ +!5?Z?;,M8QR)!IK2(2S$2
MQ"PI/NESN1 U@=O;(_!*@7>JH%L*NGFB!5F>UAW5=#J68DNDB48W,\C7)E=C
M-BPQV[C0$M\RU.GI3"0A;@J$!$=*<!92C9-;RFD2 %D88T4NYU1"HB/0+*!<
M79$/Y'%Q1RXOKL@%80EYB$2F:!*JL:T1REC;00EP6P!X>P 6D'9(U[DFGN-Y
M+?+98?D=!"AW<[G;E-NX%-5Z>-5Z>+E?;X_?@Z0A8'$%(DLP<0D!L U=<K@F
M')0BE&/AFZ5I3;7P]G-O<X V4Q>A-O5T6D)Z54@#N5LA=P\BS['P04K<-:R6
MX.F:I%22#>49D$NS2RG@L8UP Z_:D OO08W'Z3B.LXM]-*R!WJO0>^>ATTQ'
M0K+?^.02ZRK'5JW<A7&_!M1W\K\=\.-Q#?)^1=X_CYPIE1VG[K^A&0[\7F^P
M WTTK,'L5\S^><SXLZXT'EN6K(^!^Z>!'PUK@ \J\,%!\)F(8_S)_YOR'IQ6
MWD?#&MS#BGMX!O?IM3W<5[.[Q7U"8 -\5(&/S@ _K;1';UA&[LAUG>$.\]LX
MO^L/^[U1.[+KO-YDSAG09]1VZ7L<O27P,'OM%G8/LB] ,E#DD[F%-R UPQN'
MO)[7A<FI%?V@K>D!;U1* YA8V.0ID!NPIN_?N;[SL?6J_4]NS45XO7K=PW?O
M/]P&I7-]9[K=MA-S0F!!;]=Z*M/0?J-RS1*%7< *E4YG@!:RZ!&+B19IWF8M
MA<:F+1]&V%>#- 'X?B6$?IF8SJWJU*=_ %!+ P04    " !.0FI5LOSP_U$&
M  "N'@  &    'AL+W=O<FMS:&5E=',O<VAE970T+GAM;*U9;6_;-A#^*X17
M# F0Q"+UGB4&&LO; JQ;T+3KAV$?%)NVA4JB1])Q^N]'RK)DD6<EW?0EEI3G
M3GSNCKQ'Y,V.\:]B3:E$+T5>BMO16LK-]7@LYFM:I.**;6BI_K-DO$BENN6K
ML=APFBXJHR(?$\<)QD6:E:/)3?7L@4]NV%;F64D?.!+;HDCYMSN:L]WM"(\.
M#SYFJ[74#\:3FTVZHH]4?MX\<'4W;KPLLH*6(F,EXG1Y.WJ/KV?$UP85XL^,
M[L31-=)4GAC[JF_N%[<C1X^(YG0NM8M4_3S3*<US[4F-XY_:Z:AYIS8\OCYX
M_[DBK\@\I8).6?XE6\CU[2@:H05=IMM<?F2[7VE-J!K@G.6B^HMV-=89H?E6
M2%;4QFH$15;N?].7.A!'!LH/;$!J V(:>"<,W-K ?>L;O-K >^L;_-J@HC[>
M<Z\"EZ0RG=QPMD-<HY4W?5%%O[)6\<I*72B/DJO_9LI.3J:L7*BTTP525X+E
MV2*5ZN91JA]5#U(@MD1_;"A/=5X%ND2?'Q-T]NX<B77*J4!9B3ZMV5:DY4)<
MH'>=^YNQ5$/4+QK/Z^'<[8=#3@S'11]8*=<"S=2P%H!]TF\?]]B/56B:^)!#
M?.Y(K\-'NKE"KG.!B$,(,)[IV\TQ1.?_O7WVG]_>"8;;%(M;^7-/^+LOYZR@
M;7&@O]X_"<G59/\;2O7>F0<[TRO@M=BD<WH[4DN<H/R9CB8__H #YR<HSD,Z
M2X9T-AO(62<C7I,1K\_[Y'?52D2:4W"J[4V#RE0WC.<)#@/O9OQ\'%<;1$(O
M[H(2&^2[CM\%S6Q0Z 5. ^KP\QM^?B^_*1-2KT G.>[-_6..,0D-CC:(X"@P
M.-H@WXU,C@ H]C',,6@X!KT<?^%,"'26J[_G:,/9,I,0T\!Z]24.7(.I#?)-
M3 (XBAR#IXW!OA/#/,.&9]B[>M1=I%PA^K+1/4=<0SS#(5>-(9TE0SJ;#>2L
MDXFHR4346W$/G"VV<ZD$U;-2BAN]E$.9B*PB< -CUDQMC.<82TQB8S#1[:Q3
M<0#(.YK('9YQPS/NY?FH]*>JMPNTHJ6JO?P"*56"TH7249GN6UJC0L1C>RR1
M8PQX"H#B(#*HVR _BHT).;-!@>=[,'7LM,+.Z27_FUY5E!3?\4S22[9<ZG5T
MF;TH=9<*026LSAQK+*&9<@!C+!_)&]S,>MUT.1^)6=S+^2-5:565O>5'RPPZ
MXW3.GBG_=@Y2QJ_1F0(0;#)^U<L,@%R2$[T#DY8RZ:7\B<DT1\Q:6T&JQ&Z$
MQ#,5 81R0[.+ *@0Q]CD#*"B4Z( MSH4]XJJ?6TO.2L.Q-6G"4C8!4+N.:8^
M@& XPE95 ["0A!9G !:XIU0";J4>]OK[IUQ3WN07G665&C\'FRCNE8W?VT4'
M]98,ZFTVE+=N4EI]BOL%ZGTIJ?(K#WD!DP'H3]<W:Q!0LF%H5J -"L+8K#]
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
M-"R'J@F4FNH:R?*BESS3S>8]Y1&Q6S+0'NEH;HZU _0E=/VK?JI9[;5(?R2
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
MR\LL^:SB<O'BZ/Q(Q'(65DGY(5O]CS3TC!!>E"6:?HH5KQU/CD14Z3);FLV
MP5*E_#O\:OC@;3CO;MG0-QOZA#<?1%B^#LOPY?,B6XD"5P,T_$"DTFY 3J4H
ME-NR@&\5["M?O@JUTB*;B9M":IF6(?,JC<4MBPF_NU7S5,U4%*:EN(BBK$I+
ME<[%39:H2$G]_+0$3!#>:61.?<6G]K><.A'OLK1<:/$FC67<W'\*%#@R^I:,
M5_V= &]EWA&#;B#ZW7Y_![R!8\N X VVP&NA4OS?Q527!:C1_[<1S/"&[?#0
MM)[J/(SDBZ,<&5W<R:.7?_];;]Q]M@/;H<-VN OZ3Q/B Z=>W%[=BO=OQ<V'
M-[=OKC]>?+QZ?RTNKE^+VT_OWEU\^!=^=WOUR_75VZO+B^N/XN+R\OVGZX]7
MU[^(F_>_7EU>O;D5#O7<1_WC0@KMX1O6^.96'+ GJPIQF2WS,+T/Q&JAHH4(
M"VD<C/I#QF**7B>@_T89>!)=PAE@8N6B ;-0::3R!*#.92J+,$GN\7N9EP!#
MI:($?#ZE"O^Z!11AW?'?_W;>[W>??>K<=L0O%Q<W]'?OV1-B.W@6=#L &+U.
M!.O#/"\R. <VBS(C@--* T>UQ@,8^944X&T+6-.!XQ+^+@86X,$9["E62LN
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
MR"KF<F!=W_BY?ALD<K5BV.ZL,OUL[&46Z+!/ROM<>M_:4&?4OJG8U+SV%=G
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
MDO+$JI T,&KVP<F323?H=;N[HAC>S^R.CL'62#?J=$=>5&BKW#;(J5\5\?D
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
MSC["&A,E,D..R!@MS!'(O%6- Z<KB2C"^K!2>5-O(W4R3:S=(!#X-U(2JI9
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
MX[W)^)*.^90E KRGT[7JA@34GZM<_PM02P,$%     @ 3D)J52VY\ERK#@
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
MQ2KN/W\!CAJV@IJMM\%!@C=JXXK0<T3@!<$!>F$C9LCTPCWTC&#BO]\L=%G
M$_YG2$9#8C1,@J+CN=[(2+TZ@?MK5=RID]=__I,_\5X<8'#4,#@Z1/UH.SQ"
MY<NGR[_^\NGCNZO/-W_^TRSPIR_$U=_^^/#EO\2O5:98F^*Z2.YDJ<1U"F$0
M7Z7XD+6W'7&O1)2O-ZDJ52S*E3KXZ'U2KD2DBA+Q+Y),ETE94;C)%-_N%/RW
MT +8P82T3)7(E\)W0C]T1I- Z)6$+NE:7A6T[1J1JDD70I9"BDU51"L$G=@4
M2<3//O/=T!,;59AG7?%5"9GJ7&@H3Y2YW6BM]G)SFISU1%+G[RMR6_%5%H7,
M2DU4FHW!ZW3FS$:S#J\[?&9"?5=%E/08]5S/\_R652R+L3EVOQ_:J-K05Y"2
MM[>%NB4U@TK@3.8!U.4]>?MM/<'(49YE%@W9;H\8EUUA(Q/C!9O&Y@!K_"4N
M$DW@S$P]"\8!UN65AI@.5E=:/ O'S248 %PBEVBE'5;%O34<[Y!"XA37HRBO
MLC+);GE)CHT+L51&[F>C:4/.%5_R$F;-ETM5T/(HUZ59%8:C=M>5O%-BH50F
M.&@S\FFIX5F%BBNC"CPCXSBQ?D+<G(/72&X2VJ!/)%,E42#MD3P&5?")%'29
MPXL@7DR?X(U)+&GM6YG*##:YX1PKF4? 6ZG6"\A68YPK?L?=39%'2L7L&-#?
MLLC7CT>@(M?:X-'O";*42A^@ C= LDA3B,0!$B.6"V0/&]"[WK*]R6!,+)3(
M<E Q6G%(%EU%*\?H!\ZE$\"7W6,G;HA>D3Z0K7!_;0FB3M EJ-%E!5MRDC:L
M3!T+2 0?")--KJW_RS2J4LE> H.(--=ZR]-_K: &\[1,T^,D9$76JH&#O=EC
M*J=#9Q R'HWA0E&YA+T[TCLF)"78H$*"W/1.%0BU8V+[2]>H5EBS">EH@-VN
MVA%Q0$[XSQW,1VYG,%WJ5>N/H&GP":XUKEVK=OQ&6%>\4Y%1%K;SAS--;\E
MMGF,Q ]F''\>.OYL_",9!R('_^N,LRW6X:PS&SM!\&]*.;X3(')'?OCD[;<5
MM2?E/&+A8]..V7+BM6!ODLXH&$PZ/YASYD?EG-%\_O\]YS1:#WW&,7\KY33)
MYM$ '$@X(]=[>L(Y*B3V)IVM?-./F*<DFX8-?^)84/J1C".S"EWM;M)Y7,KC
M$T^?UE')9R>:#R6?HZ+ZRXY0#2.(M02RY-F.4B>/):D]%'\\48T.)JHZ)_JV
MUQ*?ZJ#N-$/;Z8DB^#;1)3M=#$FCL@4#[#R?>X[O>8=R##A[)'<Y>_/0V/7&
M6WGHZ.I\Y'D[U?G8WU.=)X=;A5V=#4/K$)SZLZ/@=/(?#Z=[*OA=W0W#Z;B%
M4T &EI++\9! 7%>%KA <=>E!2*OK@ +?*!O+9(&ZY_>\)&OF+3C98/0(X=(T
MOV?;T=9W4-/B@=U5=R81C'W675'@9#%YF*XWOJ2-EDEDD>9#%N6 S$*2&1SC
ME9 P2C9D@S7E6#94"XT[S+*I.%*CJ%H3XBIR30HX7=*-0M$DCS^*V.X;,16N
M"$Y+\BB2"B7RK%;AF=&Q6<?>0P'6>:Q;0$VFG?()6P^UY%-O[GA^MSPSTJPW
M,GNP<Q<- "\2W'VS;4" RBJ)5B+1-4NL !(,?]0YDL_YDA+30FJL81[V(PIJ
M[JJP>4X\*%D(Q=EEVS]A<]_WG?%HF^U];&XKC?D(#LTBCF4%?WUGBO^\H%MC
M/HF1<#1R F^\EY,OAR0K5_" >ZE[1$UTTM650II!-$AQ$ZV ,3".'[X3^7T&
M?UDE&W%;Y$@RIUQD8!>#07YX&I^=AF>M7B-HHR0.KKX#RC.T<F\X80CT(B.N
M9#BF5&SF(9_-1O'YF% $WG\K;4]4*-[JS#".D$JK&&3?5^R]U[+X)CY^O!2G
MY'J!]Z)SG:_X+\YX@[&X2I6)X)_3?(&HI$I$?'2O77$*590%0('"8[E,TD26
M1J^_@DDMOE1.U\G_PBW6&N)??8><7$==KF12K"E:0/1RE:AEYR;@#C%6G+'8
M]PH8@/_?%A2@!&4WI2Q*<461CF!$U@.8N(U 6^MZ0OTJ*67CN4Q:^/]8QH?D
M^1FUI/@% (JJ1XJU\<Q^"$.Z12Z+F"Z;-(^\?.:*/S9YUL4-\U12(!/IC:TF
M'_=GIV<XDF%;#]A1@58L_-G(F2%-TR)_/'?"\<ANX'3V3!^<?1CTA*#@>"@4
M^QR<GZB1VDQE([?!_IW2R:U1>5L@P.4+55*B(?%+NY3OE,USJ;R7ID;\3:+$
M$<&<0,&?U[ 86\I@(W#0SM*_1Y!VTXBBC8(WP!ZDM$KMML3L@'N5<$KDK==]
M*I);[CN:U?MU4+ND*SYULNW8(*]1$/PZ[V77)O/V(JO&A$<S+&5A0 $LAG"A
MQ5E5N[*L4#P5R3])(8WBMI1$CX]K_1K7>(K ["Y<[]7\YKN".P=XW,]8QP$.
MF8J2@!-:_V"[/85_TTCF+0)W#/\D>V]78T?MK20<W7H!Y_2VR3DB'Z(H (@G
M)6$;=KU#Y61<K%.U#9/LPH%##W*VSF\5%^E<5&M<0AZ*4JFU;0LMTIA9T0.#
M$15Q*%9+VJVMRNM9V%8%V?5N.Y@#9DI;NA=-)U\KYWN$UI>XL:T>XQ%@@_ML
M(D(# !;;:M(4:X=4AA7@V&I-),B 5OLD4\<K[[@*15, +\(MWW>]Z4^U#$/.
MVVONN#(Q*,8L/LY7OP9\!*%/Y1GZ&#*2"1E%/4E%.2E-T%3$)C ;YK>+65M;
M9X2.94)E.6?$C M<?=[60J;N;%"])^*@0[2M5XSNN$@6W-3"?4X79U;U-J7Q
M^C@AJV9HDF(%/R,!>7HG'Z0MA'?:YGU<FLKI-#K;KJ9MCY!ORC91US9_I*+>
M5XDSMF_GK!YR$QPB9_*D8"O\K]*$AEAMONSHD-RQA6Q'0'VBRM"]5_2M=8?&
M;!2U.T4%""'Y5D76\3W=AJ0L*S,=R3KXN@V]\DXF*1N!XC3NP/T!)#9>VPZ@
MT"J9242A3 -7MXL[W1[5:&@MM7W1@5)'H2R<\+9V:&N&08GM#RTJF"$_%M.(
MW\QE;&(LZ !%[ZB9];#?ZJ1O%KT:K/(.B-\9_7F[XR0BFYGV\M+L9Z*91&G&
M7/T!HO>4N=/V4<=D-G-H*OY_-(0*W7"Z[S#$.>8TQ,3,!_MU>(AI1GB[DAQ[
M#!'VFWC3[:,=*\@M-W:BW8[,2(6#P@)! S-RLS[XM*$;^KS=H5OGO.*8H=L!
MR]?#DH.R_=BI1Q!V9H-;<5SO?V!^-_8[4O['S.^HNK!<<  :!.X=G0U9?==Q
M1[.MH\;C_';DSN?=T#HT3ZRCO4^9^^$.&/6/&+:&C($;MD/&X<>L!@X>;B,7
MCORZ+;4#_5[Y"7EWSS*><MH=]NJ8W8.$QD!/.R#PV@GAS@&!2,R@LB$M^T<T
MG4%7EF1*K,WK;Z83&CJYR?)#EOEARC1*&T^<T6C2LMJG2!FP2CG.24B.V*XR
MGHV#[@GGOK,G]JWF2&0E#?*T4^2NP7N"#AX\#T?&\_V[[[GAB]^;FOR/]LCO
MQI"_JGWDFEWIB@ZG3(6PFWW\V=29AB,13.:(7<\D$32634L;\H;CSCGH&X[^
MAL+(=R9XT/['P3P:>+Z.E]#WG-FD<01Q20V7*1B)PZ^J1FC.3OT:O'%*^$7"
MP)TF<I&D9MJ(Y0TJHB:JS,0O5D@T;)[<^#K51;1?__S TFZK.+>N6K;VYE&D
M";B"MJ,1+06:!CRG%AZ+1@CX(2=9W>.4.\F"<AP/:W@POY1)/;O!-V[O%A:^
MS5O*//;7U4)C5]7VW4D&FE1GV'K+I7ED=JMT'=M,&#7F-] P]+=%9DZ6]+ZP
M&0C;W&HS2M3-*%1/&R&IOMK8WI4MDF0PEA*G-K.?\4O#L:DJF:(9!8-^1]0.
MBNU3.&$9HFQ'RPQWIN885+CU!9/(S]=*ZJJP]MFO7W1365[6E@4N<,UZ;D2A
MPA2B&4?=>\/*3Z1D:9I"+J^I]S)MUJ8M\>E\!T%:-IT(^A\P".%C*.0]20(T
MUIV]S#U&(U1%^6V&WJG9L]*<> 2U!)1?SNE%63J#0OOQ3\/>6D&=L4DF+8P9
M%LT;ZB"H>UL.BE<780EZ0!1GX)K D6J:UBOJ$AU7DCSN3DQ.V<T,^.JSY^ &
M8=?'_-]WL@ C(J-?^^D2M1=/)E 7H,KD498?O,"GP/Z; @9S*K@ !7<JS3?L
M T \X4\$ZK4;E:;\*@!@#9RGIK66,=I6VUK=T?&$",=B/A4 1UO^[=70,^%/
M\2><TR=_3!]G4_M0E2E99+6UAYZF^2)2=/,>XW 9X?!#/$(P*3T\N-YG>VME
M2]5[+*7W0A"2Q:TAT36K]1<SV]QVIOIP3BPK--V-;8U#[50UYJ[([ZB5X $1
M^4.CA9[DP_52PF]7&&PR;[,T;A]SC/6*N\ =\PF<MI';!-N7&@D;W#$3M,XB
MW@JMVYJ1SJ)6?=AZRU!IXHNNOT4Z_'9^$ZUR\CM+@$HW6K#.8Y6ZXLH2TP+-
M8&H8MEA8OU?#)1@?:]GWA:RD:;)L<-H0=]#>ZV_G2XJ3YF08WJF,OS9/WN5$
M%XGFP6GRS+(J.%O&"KTOC6D6]*,4]V"(O>\IJU:C+8R?"<^=DI./7'_6UANF
M=*6;<W+[L8L8N-H6J29%$,"F.A,3U\>_0'P>EE"$KB=^$E2W_M32:P5%%(]X
MQ7P"\_\DWMDYFWA(Z$33LT_3WS?UKW!:3LP/9(B,.=?D<_KN%-F..".:HMYQ
M&]2!MF.J8'*L7@MH<%<_[U1Q7^O(:3[4S1O"8J=G0[DV=7R/$"9T40/_3-Y)
MY@LFS@S%)QO@JBF%3X.Q=R9\=S06ET03+G ! 98HHNBN'XY124_/2,]A=]\!
M4<+QS/$F(\)66CR#U?X..]E19C=2J=+<0R28TUO2<R8"8:;NO&96VAGFP$.^
M/W/FD(U$QD-C=R(^#V5/W3?RG@S[[[-YA^FG&MVAMYF0T5S4T;7)1^8@",;U
M:DN<XMK,8XN/_4?LB:J]I0E##/VDYZ+S,ZNU0L:@'Y-QUYF5YA=7S=7F]VIO
MS,^TVN7FQVZ_(>'0X#-52SP*$!F?F+%E_:7,-_RCK45>EOF:/ZZ4A(UH >XO
M\[RLO] &S:_X7O\+4$L#!!0    ( $Y":E4@J! =H@(  /(%   9    >&PO
M=V]R:W-H965T<R]S:&5E=#$V+GAM;)V437/:,!"&_\J.F^DI@XTA:9H",T!H
MRP'"A+0]='H0]H(UD25'DF/X]UW)X-!.0C\NMCYVGWU7TFZO4OK!9(@6MKF0
MIA]DUA;786B2#'-F6JI 23MKI7-F::HWH2DTLM0[Y2*,H^@RS!F7P:#GUQ9Z
MT%.E%5SB0H,I\YSIW0B%JOI!.S@LW/%-9MU"..@5;(-+M%^*A:99V%!2GJ,T
M7$G0N.X'P_;UJ.OLO<%7CI4Y&H/+9*74@YM,TWX0.4$H,+&.P.CWA&,4PH%(
MQN.>&30AG>/Q^$#_Z'.G7%;,X%B);SRU63^X"B#%-2N%O5/59]SG<^%XB1+&
M?Z&J;2_B )+26)7OG4E!SF7]9]O].1PY7$6O.,1[A]CKK@-YE3?,LD%/JPJT
MLR::&_A4O3>)X])=RM)JVN7D9P=CE>?<TBE; TRF,%;2<KE!F7 TO=!2"&<8
M)GO<J,;%K^#>PXP F8&)3#']U3\D:8V^^*!O%)\$+K%H02<ZASB*XQ.\3I-O
MQ_,Z_Y,OW'"3"&5*C?!]N#)6TZ/Y\=(IU$&Z+P=QA71M"I9@/Z!*,:B?,!B\
M?=.^C#Z<2*';I- ]1?_W*_L#[G8VF][/)O/[)0SG-S"^G=]/YY\F\_%TLH1%
MJ9.,7CT<1QT:4&N@J[&8KU W]W,.%4+&4F!%H=664]&@V,%9NQ71VQ7"E2&7
M0+W!6%).HJ$X\),C/O4:LGNBL=*[<Q>KRGB2P5G4NGH&&<!M0<6-*5@%)N.%
M@]L,R;_4-H/'DFE+\LC?J?.'18CXKQ!<&_L;H>,)*]PIF;9>NLCPJ YSU!O?
M;0RE5DI;EV2SVC2T85W'S^9U-YPQO>'2@, UN4:M=Q<!Z+K#U!.K"E_5*V6I
M1_AA1DT9M3.@_;52]C!Q 9HV/_@)4$L#!!0    ( $Y":E7'D9MDI 4  !T-
M   9    >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;(U76V_;-A3^*P=>5VQ
MX%O2II<D@..F:(=US>QT>QCV0$O'%E%*5$DJ3O[]OD-*LI,FZ1X2B]2Y?.?V
MD3K96O?5%\R!;DI3^=-!$4+]9C3R6<&E\D-;<X4W:^M*%;!TFY&O':L\*I5F
M-!V/7XY*I:O!V4G<NW1G)[8)1E=\Z<@W9:G<[3D;NST=3 ;=QD)OBB ;H[.3
M6FUXR>%+?>FP&O56<EURY;6MR/'Z=#";O#D_$ODH\)?FK=][)HED9>U767S,
M3P=C <2&LR 6%'ZN><[&B"' ^-;:'/0N17'_N;/^/L:.6%;*\]R:OW4>BM/!
MJP'EO%:-"0N[_<!M/"_$7F:-C_]IFV0/CP>4-3[8LE4&@E)7Z5?=M'G84W@U
M?D1AVBI,(^[D**)\IX(Z.W%V2TZD84T>8JA1&^!T)459!H>W&GKA[',HV-''
M*K,EGXP"+,K^*&NUSY/V]!'MU_3)5J'P=%'EG-_5'P%)#V?:P3F?/FEPR?60
M#L<'-!U/IT_8.^S#.XSV#O]'>*2JG"YNT,Z>/?TS6_G@T!3_/A1VLGKTL%49
ME#>^5AF?#C )GMTU#\Z>_S1Y.7[[!.:C'O/14]9_6)(?:%]]N%C0QS_FGS]=
MT$59&WO+3 L.7,4QN%(W-'><ZT!7!=-\MKA8TBP+![0M=%;05GGB"GGAG"#^
M23EL3H]C15"7VMEKG2-_JJ*+Q=6<0J$"::QE1)LJ5RO#%. D2T[4!LS@ V7L
M IZ($R0G,NR'$40T)(Y]L_+\K0%4<TL*LX^NHM4MG+  KY4HSI.E<!L+^DY[
MY0.V); %&\UK"8?LND4LNG-;>6MTKB2J68T@:J=5S,=.=G(0#8K\K&2G,X2X
M8)\U3)=&W9<T1A8I9QU24>>;D!:A"TQ=*VW42AO=0MXTR*#4S1,2)JG8+\20
MWEL#KM351EYX3N;Q%SR*E-K8QAY9-5ZL2#NO.(,8:A"<34R'#,+)1DL]0-X]
MGA2E2A7S("^)0UY"B#=6W!K>:&]B?B#M>&<H6,J,TN4/RRT&^U+[0HS S=)F
M6AE:<M8XR4;L 4+%L0G3Q^.?.S"RI=<:>=SB;/!4*YV+2&LS1ARVS!7]IJH&
MQPE-8HM.8G2@D<#E"JY;+ID,Z<][%@62T:66EH#A9Y/QP7@\IAI*G9.XR)1!
M^I432$X:#4T<'4E2E7"Q+IM2&L)N8S9BT>^804S/CGOKCQF4PCNJ&U=;J6B;
MB*ZWNM+M:M&G%].'<PB=$,M:J&NI(8/HG.8JDUWR>E,A>+1TH%^FDF9')>K]
M*S0S:44!L7'6>]0U8UT'V$2-Q)!"AW<MHEVLK4-0,0?W8_&8"-0$U%4COTBU
M#D74]-*==P*>O*:V*W59HG<PFVC96MSGXK<31FU$*+,.[5K;*KY\.(>3UXE/
MVEY$7H+Z"CC[33D7:-7M\Y]>32?';_WCO2E\$H-Y2 M,Y#"E'1TZ9,8PQM.Z
M!SC,IT+6M4$!I'(M:)G0/384&X@-G/BE9X6N^CO*2!1P;R9CS:YYQSG=P'O.
M;)6WO*9=OJM3RV1#FDDT;L<"$82L;.,>Q-<;OV-Q1XW;-E; CB,"WRV^O*>-
M.!)'AQ/8L(V'2&*E[2YB\=YBN1?,=P[E?7MX<>Q[$/5>4C S*D<_@,U0WYU_
M)>< AC<UWK.CHQ<]FMA&D7EM ]J-^88YZ_(T8XE^=;I6Z*Y%@!M7B_SN:;,,
M^(GD+3X_8R@CK_;CU9)=C"A%_@ZX$W>UE+8[E^Z ;$/E+KVQM=#S@&4:,01@
M&*?(G+LS ]WM@ 91> [^!^#/%0Z^C&D9OP]4#.$[;IVF<_@^ZB%=7E[2[U95
M#]V)1GM75ARVFW@Q]YARY#O=7OO=_NX_2U?>G7CZ<, 598/QQJFUANIX>/QB
M0"Y=QM,BV#I>@%<VX#H='PM\O[ 3 ;Q?6QNZA3CHOXC._@-02P,$%     @
M3D)J5??<&-ZT P  ?P@  !D   !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL
ME5;;;MLX$/V5@7IY,BQ93M(TM0TX:19ML4D-Q]W%8K$/E#2VB%*DEJ2B^N]W
MAI(=9Q&[Z(O%R\SA.6=X\:0U]KLK$3W\J)1VTZCTOKZ*8Y>76 DW-#5JFED;
M6PE/7;N)76U1%"&I4G&:)!=Q):2.9I,PMK"SB6F\DAH7%EQ35<)NKU&9=AJ-
MHMW 4FY*SP/Q;%*+#3Z@_U8O+/7B/4HA*]1.&@T6U]-H/KJZ/N/X$/"'Q-8=
MM(&59,9\Y\[G8AHE3 @5YIX1!'T>\0:58B"B\6^/&>V7Y,3#]@[]MZ"=M&3"
MX8U1?\K"E]/H,H("UZ)1?FG:3]CK.6>\W"@7?J'M8L<4G#?.FZI/)@:5U-U7
M_.A].$BX3(XDI'U"&GAW"P66'X47LXDU+5B.)C1N!*DAF\A)S45Y\)9F)>7Y
MV1*5\%C 0EB_A945VHG@UR3V!,]!<=Y#77=0Z1&H]W!GM"\=W.H"B^?Y,=':
M<TMWW*[3DX /6 ]AG P@3=+T!-YXKW4<\,:_JM7!W_/,>4N]?U[2W<&>O0S+
MQ^;*U2+':43GPJ%]Q&CV]M7H(OEP@O39GO39*?1?*]!/H&Y_GZ]N/\)BOES]
M!:OE_/YA?K/Z_/7^JP;RVF.5H>V(CRXZUP?0(J#V:(F"U-Z +S',P,*:2CIG
M[!;NC4?:M[Z$.S>$3XW0&Z#H$&NLW$@M%-16ZES6U!*5:;0'LX;7R?"<=K52
MI&=XD"P="*@"'PYCG!M3U4)OW[ZZ3$?O/CC(C+ %3Q;2T@DWEI)7Q[@QGH9&
M.\P;5F(R)3>BNQ9T :4(ZPG?6$DF%V0X(W]I-#ZS8SP(X2+/;8.._2!?G ?A
MX?(-U$16:-U4 \B)+&FD8T!@4FT'8'HW&N\\84@2F0DE=(X=[5X>D=B24UC3
MA^,[J]RS/#*V+8UB:[E=T\9@!ISMZ;YDHVFF+]4S44/X5N^(Y.2$15J?E9(Y
M^(A=3?HK#9B^/5KNP4&UB/. &91<K9I='1!*KH3% Q'/-#R!=_6I*BPD,51$
MM,'@,ED@,D6<YVO?Q_Z4-+-Z(@7A[F<G2O&(!^4*]=N5Y,4-PWZ"Y7VPKRHO
M,TK>#-AVU^0E*'1TV+LHVD 46$G/1[43)^I:R9PE@!)M5V5O/.U_)44F%1=E
M;8X[#"V!'AX0)O6_8WKJ<HP/'H4*[28\?8ZV)M6B>Q_VH_O7==X]*D_AW=-\
M)RR=84>*UY2:#-^=1V"[YZ[K>%.')R8SGAZLT"SI'P):#J#YM2%!?8<7V/_G
MF/T'4$L#!!0    ( $Y":E4^^994)08  !H2   9    >&PO=V]R:W-H965T
M<R]S:&5E=#$Y+GAM;.U8;6_;-A#^*X17%"W@^BU)FS0O0-)E:P>DS>JFPS#L
M RV=+:*BJ)"4G?S[/4=*LIPZ:0IT^S0@<"22]_"YAW='4D<K8[^XC,B+&YT7
M[KB7>5^^'@Y=DI&6;F!**M S-U9+CU>[&+K2DDR#D<Z'D]'HY5!+5?1.CD+;
MI3TY,I7/54&75KA*:VEOSR@WJ^/>N-<T?%2+S'/#\.2HE N:DK\J+RW>ABU*
MJC053IE"6)H?]T['K\]V>7P8\%G1RG6>!7LR,^8+O[Q+CWLC)D0Y)9X1)/XM
MZ0WE.0.!QG6-V6NG9,/N<X/^2_ =OLRDHS<F_T.E/CON[?=$2G-9Y?ZC6;VE
MVI\]QDM,[L*O6,6QDX.>2"KGC:Z-P4"K(OZ7-[4.'8/]T3T&D]I@$GC'B0++
MGZ67)T?6K(3ET4#CA^!JL 8Y5?"B3+U%KX*=/YE6,T?7%15>G"_QZXZ&'K#<
M.4QJB+,(,;D'XD!<F,)G3IP7*:6;]D/0:3E-&DYGDP<!IU0.Q,ZH+R:CR>0!
MO)W6QYV M_-8'\5?IS/G+2+B[VWN1K3=[6B<):]=*1,Z[B$-'-DE]4Z>_C1^
M.3I\@.MNRW7W(?3'K<<W(*[.IN>_7YV__R3./^-W*JX*1TEE*17OC2<G+N6M
MG.4D/A1H6)*>D14'4>Z^\!F)-T:7LK@5RKD*5E*XS%C_PI/5XM(:C79C;P.:
M4(68RZ6QPLS%!:D7?U:%>/:K*N1S\;:2Q8(',*:Q:H'67)16%8DJ\22UJ> H
M#)_L[(TPRE1.%NE 7+A!;0R)EPK-^2T>S5(APL23W<Y@MIY9E2Y(S $/Y#@E
M@LA'S]@M82()!WF]++R2.1!#B]0DV#'7G58Y.*VC/2;H:/+TI_W)^-6A$S,C
M;9@]518EQE@8?\*X<JU/P?ID,F!)7UGE;T4JT0:K JLF=$R<.4S"'$TGZPY7
M2+"#,Y+6P260).>%Q!^J65%44-#6!J'XB))L@IB)/%"!V=54!14;R6<R;X&A
M :IB8GF)6WC0L,3ETH).%0>6=;S(T+WI2YRL"1@M>9T(!F%D7&"WP:5"E;"A
MMZC#9Y69G..#GTMI:Q>!@.K/U-'CS;:9K\IZ64V"\+;$CD$,R$.<.V%Q8H&^
M,VN_L]2@W.<9,U[JDK>*/JR2G 58^_"@"UI3JL ((75'LH$XG?MZ[#=)WF$E
MPM;%KF=R29T "$O61'1@P(+%6$ (A-C0(6RI:&*BS_JZ*LE$3@Y%*XY&:*)?
M*^\1 M$K69:Y2L)RYW(UV*@1NS^B1OP&S[ZC,$RZN?Z,QW,&3D:'$8/A0\/X
M\/E O"O$!Z1BG;61ZX5M-)6Y,YTJ\JTB\HB2P0)RRYI+3(?U^__I?V_Z=T3Z
MSXO >NYN@+2E .7_NTM!UYT?5Q#L=Q>$#H]_L2R<WR09YB%QNK!$FGE_6"??
M>-14BA4)"CQ#C!GV<HMI-Z^_[F[R&T=CGPD<=7#8Q;%+Y3E6#Y@('<T3=<X*
MSN1ID+VN3HP/0N--ZSIC+RO+^>:; /N:P6;%8]Q-G+ >DD>G#/),/0\QK,+%
MHTWO>PA@C0K<7N[6S*XFC:Z7#6A]E&N5>5PI'>UM+Z4-_-KQ8-2@]^$0/$ID
MY6(>=!.@J2CU*8E]W.(B1)D1+G%IE8#Z[#;4L,@,IUW0K*6_ATD_: X6H$%-
MU[:@:07AOKMJ"=QAQ<[^7O]@O(_="EGM'I9A&L:TF/<<!!.C4<@%KFK)EU@.
MOP):(:-((LNP+BR Q#Z9T0M<@[]04Y;>2Y?*:V$K9*(H.R$)_IREVJ *T0WI
M4)@ZNX:EA>+;C(_WY.L*YU$=KCDUX2D?_B$$<$^3$ KC@YV=/J<Y=C*^M 7:
M@.="5QBQL,8YWBD3!+1KUJ;=\'D65U*$VK9J_?4NZ[-ZUVBU<"#JYBH<&1 0
MM3]\CH$T:T/$R&8<K2MMW'H[ ;<EJ?H;$JXR!?&[3AC>Z%8* ;TR59[&Z S2
MA0QF8J3OI,S#,[(NB719OU%'+5'_!]ONA,/.?5V3782O$AQ("/5X=6];VP\?
MI_&^OQX>OYI<2(N,=RC?<YB.!J_V>L+&+Q'QQ9LRW/YGQGNCPV-&$E+R /3/
M#;C7+SQ!^SGHY!]02P,$%     @ 3D)J53V7.5)8%@  (E(  !D   !X;"]W
M;W)K<VAE971S+W-H965T,C N>&ULW3QI<]LXEG\%Y4FFDBI:UN$S5Y5SS6:V
MTYUJ=R8?MO8#14(2.B3!$*05]:_?=P @*%&TY?1L3?671+* AW=?>.2+M:Z^
MFI64M?B>9X5Y>;2JZ_+9R8E)5C*/S4B7LH!?%KK*XQJ^5LL34U8R3FE3GIU,
MQ^/SDSQ6Q=&K%_2W3]6K%[JI,U7(3Y4P39['U>:US/3ZY='DR/WA5[5<U?B'
MDU<ORG@I;V3]N?Q4P;<3#R55N2R,TH6HY.+ET?7DV>O)%#?0BG\IN3;!9X&D
MS+7^BE\^I"^/QHB1S&12(X@8_KN5;V26(23 XYL%>N3/Q(WA9P?]/1$/Q,QC
M(]_H[(M*Z]7+H\LCD<I%W&3UKWK]7](2=(;P$IT9^E>L[=KQD4@:4^O<;@8,
M<E7P__%WRXC[;)C:#<2($SZ(L'P;U_&K%Y5>BPI7 S3\0*32;D!.%2B5F[J"
M7Q7LJU^]CHTR0B_$ITH:6=0Q\ZI(Q0W+"7^[4<M"+502%[6X3A+=%+4JEN*3
MSE2BI!%/W*>G+TYJ0 I!GR06@=>,P'0/ E?BHR[JE1'OBE2FW?TG0(RG:.HH
M>CT=!'@CRY&8C2,Q'4^G _!FGD,S@C?; Z^/X/^YGINZ HWZWSZ"&=YI/SPT
MLV>FC!/Y\JA$GE>W\NC5W_\V.1\_'\#VU&-[.@2]E6<9R+,/R0> $;^MI#"!
M+L0M:TK'&MBCFTJ\T7D9%YM(K%<J68FXDM;PU1\R%7/T!A']-=%@X::&,T#S
MZU4'9J6*1)490%W*0E9QEFWP=UG6 $,5H@9\/A<*O]T BJB)?__;Y70Z?OYY
M=#,2_[B^_D3?)\^?DDJ#P:,W ,#H#!)8'Y=EI>$<V"QJ30#GC0%F&(,',/)K
M*< +5K!F!,=E_%L*+,"#->RIULK(B':K@CTELLMB^+-&S"ST-T NL"JEO>]5
M$0.%<<;H@[.K#2"9Q78#,I)/!G!F)+Y(L8IO)0JE!-ZE!!$91KQ&EBT\1#@A
M%H +K:E7E93$@@)H$SE;G$2+$S?(SGPN*V\TM! ^3$395*9!25OLJP:%P:Q<
M-AGCA2+?E<2-3)I*U<JN?_<]6<7%$AF0Y\J@4Q^)-[*J(7!TF(:+%UK7!7!-
MI,HDF38-**$H< EJ "A%UJ2L 2V]IN6@9X\JB#M5"FLDJY=7#.;D7,H"53"%
M.(/"!'[GJD8R0M)- UK02_N(;&)(!+@AI,^L=).A!0@,HH@B'/][4W"0(AQ1
M[-=%T0"(7V6IJUK +QB#Q&1\_-]>J!L95U:&;V5B13B)6'+.$.A+!YBS"$;]
MC:>]HYFOXXQX=D.904PRWCUD!3\0!U-906P%P54Z9Z5L4E*&) 3:*ZP8.+R"
M?W )V!Y\T"3LVLE9@-"=BNU3%+2:;XU"F<\W@8R152B:3 +PON-'X@,;J2Y5
M@5#AH#PN(!_!GZ-= VMUY6[28 6I-Q+ VFO5!RRC0F!Q^CM$>%Y< '>-P8 +
M"F>]KEC$J@*-9X=ZMZ",E=0>D]X18+0/:N". -POW@7]J$.YYX%OR%60![ZI
M=?)UI3/0,(.:.[EX+MZ!J.O-C^."G^Z'3VQ6XCV$K!]FP&@@Q)_Y$'\V&)L_
M&XE(25.K'%UM7W0_# )Y O::;%OP8Z]&#SI4:X(F,"#4Y3S^*H.CD!.Q@5R@
M9(TBXX\7"XS+9&TYAG\T:'16[,11__N=!P(+S9.<P4A\;#' E!T0A\4M#D#A
M"G(.74$,SX3\#OJM)%*$\&XA1]&-X<#>016R%B71S0%5[+^-+N)Y!FG!=5:#
M7U^ND 33(1=2'$0AQ4-;QEA51IBF%E\+O<YDNB2IH'- Q.&DEL2 5WD,(1 (
M!GXUQN48BZ:&(!GA2O3T( 6H2@RMO46?XAVSQVPDWGDDK:>-R/\BQNA^,Y63
M"Z]UY'8"K<JLB*V J$U>V29LVH9R2Z2Z1:Y$PL09N6; K3 1'(,D::PIYF!J
MTB2>Z>NXJB#8;D22Q2HWS^G$QLA%DP$BM]+FHI@,P2+<@<I6(BK/@<*LL3$A
M R,EW42<"@A=4*#)BE*E^+NT<!,-/$<8>K$PLJ9<$UB@<VF3KY2#_OPXDR0Z
M=_!SVF70)1VS4%'UP'W0Z11+XA0"'WR)!E0>/NM$T3ED0HA3"A&J@OK.VQ])
M%=P_42>[%JD*J#Z:U@1DRP%8E^EB>9Q1/(:3,"H@,U!E5$6R\X9*N3=X5I26
M^+U)E_@S*'-7B1)*6%(%-EHY1=)FVZ8I1^)%*%6W#>P$UT"&G0WYOG/O^\X'
M/9?+&"MEOO*Y0 .H46T#5)\O_#&(/NE.[$(NRB$<076 ;$ M8T7'HN!6I0UE
MJ>"_.(B#&";CQYA:YKJ2KCZJ=0TL]GLC_+V%!X>GLL^FP)=PO'_867OA/L<B
MIT.F:<H2W%UE7 G7?^+^\R"!AI3?=&C;.K^,-S](U## "/.AA4:G8)YA!AV$
M[CLBMG->X AB3/A!%> X,'>0/-E@ANT>]!S@WBJ]4+6P8<AA@UDA.D:L,+^3
MH0!1L^EC),#+?7005I, *^0!%*[4HH$RJ:X4.&^ Y1(4BLL_Q[=0@L?M%R@_
M5#EO%.93G #]F=1-KAY'8G+QF-.=BRZI$3J44E(7+MM ,;N"PN%P<FS3()^#
M'5O_Z8$$Q)D^1FP9G8TI:9/4/<N)8O *Z$:[,CSO$N:WFA@B".82.FWE>I_T
M\*%B/4AR3MS!6N(5KC4; R@A,VX5:\:0E&<HY;/'#)!,\Z\HYLG%GRSF_W3K
MG9%<QVR]V]3_9<1Z.KN/6*\/MJT!NS*A89'06C1SB7TQJD.P78"-R3:;[A73
M%"UO,G7FUP:4O<&]*[L(6RZ[/@AHKOLZ!'%'H+8/2/B_Q7JQ=M7 6TBTH8[>
M0GW*W@'U8SBO8;X$*M"G.QW0U@W?"7HD?BDDI?HK35UHSFN&79R-89/+Q]O,
MZZ0?6#I"SE)3@_)AK8'M#.">^T R^G"RKIBLV;B/K%V22"?ZPM7A1Y^>>6D-
MYVS[]+!>T87$(6>>C^][YD!E<N$KDXO!.N)7B45#]_I"%_ YX5Y%7V7R0Q"Q
MVOQG X*8CB?G7**W]PG!I=5-#2*/J]2(UQK^$PHJ46!7SPKQN:0N[,]Z1$"/
M)[,H@/DAJ#J/Q1LHJL$!_J0-]E>>_*9+E4!Z>_[TF?@(53.HC_,,W978RNX%
MZ>J,X(()9)C85J!KQ%J4J;'+<#,/-RR+,;3@S0)\- E4[]SM+N1:+!N5VFJC
MIO!!!2RK3@SG^VX-6D*"FF5/ -_G2M[=LUW9U%ND1[;#@IBS)K;NR42V*6QK
M<D %MF!_$\Z#91JX\8<D#'USPZ,8MK6HH^=0[N('I2SVLFK@)6+24$.$?V/W
M8_!F!59PTXW[W!C8%*)'EF><CJQ5EF%5+ZEE!]Z#NPL%UO@YNW&^;>!02CL9
M9+R -:UI3\Z"WBA!;2_Y+#=$G.J2VQI /GC$%!1#IAQ^G?=";BB^',/DPC;$
M0)C83R>FV.X(,A_O$+AW9ELLGBZ^>J#.%W-18+[D>A=][4??A2L1.XOID"NY
M]*[D\@[#OY5%(_L\QN#&_JME"TW\'/0I^&*EXE\,-W5VDRIJZT!$+DEZ\ 7T
M)\U(.U9QM43=P,C;Z22C,E@ KO$W$@X%T*.<?4/*]SZNW4M]3]>,XHLPZ<3
M9B!1T@J-TMXC^FA;Q86Q/3Z'.2E#:SN63G=DJ14*#_1$0<:WQD1VW<)QVI,K
M$T!TB8]K_A [.G_0<[1_OO2I=";T;0O+(O6V3:3\78:>0U)I.TUP1F-\_Q4!
M :]1T4C#Z/Y5HI1<4+N#7.30H/@<0X@/^&&IT6#IKA[W<1\TI#)JZ=:FMI?]
M]1Q$B'=_- %CC;"]HJ5N*RRT_8XOTF7#?;K2NK:@0<^_H1<C "L%+%A+]F06
M$:*5%#CQ]\N^,N$?9%YF>B-MNQ+01FT3\9(=]#KD8 O#@L>6H&W+^XZM:Q5;
M=E.OR6HT^+L_6(W9":+BT]@ >6!,GO#NEGAA70[3@AZ'KQW@.P=0J@L,*R"K
MF*\33'M;['N2D.RVBN&ZZLK>0V /NL( <EQO2AG\ZD*O5?NN8M.E0ZC(%I9
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
M$.11#[HAVWDFTY7)C2M^<+S=ZR/ 9/\$JG7F5,LIOB=VU%[DT*,@O1&QL^3
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
MB$:U16_YX5TX#CZ>B3OIXT[.L2\?Z3QFC4"0.=2'NX;[X(]%?);S>,2KH^3
M%((VS& &S$ J=9NZ# F9<C??:%YMP!364#%['BZM1RC1%#(#N47E5E$;7G8(
MS!L!@DZFML+LJD+1>M$:C79.4DE=@!QV%KD4U$RLKPM>T8QL-%GIP0RH6 R6
M:_)C*^83IMT@'!X6=^\U1XC!2 A'\(I,Z0&\AW 83,?N&P<3>))2.$>'F,AB
M>D@2QA!/$GC&@J=T:-[:]F:3$"8QW#>JXJ:A7%I=.7^Q_R<A8_O<R;)N#*G0
M,C<[NPW_$=!9A\,P2>Q[FL#?2)VJD"(#7E*Q;-$*)S=N;PJI+!TE\Y!'*A 6
MY4;$EH00CJ=PSRM6I=BM*;>I,K\D9+M!0.KI*;\](SP] #5#Q;9<"C27=T1%
MYI!QJHN\:\-*KJ4Y)?C#NTD41A\A#$9 9?B+,!IHBTG"AM*D83PA9V[M:(EV
M=1D/@R2B=W)]39G0>D;-/VW*IJVKOF)M.!?1<!Q,!_8[":+!">8A5*3T/21Q
M3._Q]0B.'6C_H V7J#;NLM$44E.9MB/WL_U]=M.V\7_-V\OP@:D-KS1E/2=H
M<'4]\MK<[P=&UJZI4S+IBG"_!=W)J*P!K>=2FOW .NAO^>4_4$L#!!0    (
M $Y":E5@VKB_(P4  #L2   9    >&PO=V]R:W-H965T<R]S:&5E=#(U+GAM
M;.U8;6_;-A#^*X1K%#'@Q);D%SE-#"3I@@YHMR#)M@_#/M#2R28JB2I)U<U^
M_>Y(19%M60VP89\*)!9%W3UW1SX/2>EB*]5GO0$P[%N6YOJRMS&F.!^-=+2!
MC.LS64".3Q*I,F[P5JU'NE# 8^N4I2-_/)Z-,B[RWO+"]MVIY84L32IRN%-,
MEUG&U=,UI')[V?-ZSQWW8KTQU#%:7A1\#0]@?BON%-Z-:I189)!K(7.F(+GL
M77GGUR'96X/?!6QUH\VHDI64G^GFY_BR-Z:$((7($ +'RU>X@30E($SC2X79
MJT.28[/]C'YK:\=:5ES#C4S_$+'97/;"'HLAX65J[N7V U3U3 DODJFVOVSK
M;&>3'HM*;616.6,&F<C=E7^KQJ'A$(Z/./B5@V_S=H%LEN^YX<L+);=,D36B
M4<.6:KTQ.9'3I#P8A4\%^IGE1\"2-#MYY*L4].!B9!"4'HVB"N#: ?A' !;L
MD\S-1K.?\ACB7?\1)E-GY#]G=.UW CY <<:"\9#Y8]_OP OJ"@.+%W17^.?5
M2AN%)/BKK48',6F'(&&<ZX)'<-E#YFM07Z&W?/O&FXW?=20XJ1.<=*$O;V16
MR!QRHYE,6$KILDAJPW@>HUB*(@54@>$IB[C>L 1UQ$3N](C$;BNG,V![.;M9
MF TP%+[""/G:)H*&1I61*17$C20U/HCD.A=_8[?(68[K2"JU9IB?13$;!6 1
M<DR#98XL0&1A.-4&LA6H>KZM(3:\(=N"0C\"2K%BI"BBFXTL-9KHP3E[M, =
M>+^\)A[%:K1^K6MNS -&CF0& _90KDY=O^MA?7:R&-"O/[67Q=A>POF ?7SQ
M#P/F!0OF+T(V\8/6&$,[</,)\[P)9A*R()BQ^_8A[\CG[9O0]_QW!]<3+YCM
MI'3,T!LOVL(Z>)?DT1@^5OTHB:?[=?6ILKZMK6^KZ^,$+%B'=J:U=J:=VGG
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
M4!J%TAB4QE$T4VGM\WFO>!FK?6R]<P;J&'J=RV?=]L0 =0)1-#,7M!/HV9U
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
ME<MV5 3VG ?FW0FL"5XH$3L.)F2-UAI]6*WO5NAM.<GE3'NGF1YYE<#%GC2
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
M&X+GA!(S^G%C8M&U!J9^[I+=/8#L7BN[YRUM*]<2DPQ0"9*(7.W2Z6?JH2?
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
M@?K[=YM-]?R/9L"73?';[FY>_Q]02P,$%     @ 3D)J5>^*>]3-!@  C$,
M !D   !X;"]W;W)K<VAE971S+W-H965T,S4N>&ULM=SO<YI(& ?P?V7'Z]RU
M,VT$_)E<XDPC@JAHIKE>7]S<"X)K9 JL7=;8S-P??PLJ$24;G/GV3:.XSV<7
M=O<IX,KUAO'OR9)207Y&89S<U)9"K*[J]<1?TLA++MB*QO*3!>.1)^1;_EA/
M5IQZ\RPH"NN&IK7KD1?$M=YUMNV.]Z[96H1!3.\X2=91Y/'G6QJRS4U-K^TW
M? D>ER+=4.]=K[Q'>D_%U]4=E^_JN3(/(AHG 8L)IXN;VF?]:J:WTH"LQ-\!
MW20'KTFZ*P^,?4_?./.;FI:VB(;4%RGAR3]/M$_#,)5D.W[LT%I>9QIX^'JO
M6]G.RYUY\!+:9^&W8"Z6-[5NC<SIPEN'X@O;#.ENA[(&^BQ,LG_)9ENVTZH1
M?YT(%NV"90NB(-[^]7[N#L1!@&&\$F#L HRJ 8U=0*-J0',7T*P:T-H%M*H&
MM'<![:H!G5U IVI =Q?0K1IPN0NXK!J@:_N>TXY#.J^%Y)U=N;?U?7?KE?M;
MWW>X7KG']7V7ZY7[7-]W^G; U[<C/ILNIB>\WC5G&\+3\M)+7V1S+HN7LR2(
MT_1P+[C\-)!QHO>%)H*O?;'F0?Q(/I&IQ[F7SECRWJ3""\+D WE'ZB19>IPF
M)(C)US@0R4>Y4;[^:\G6B1?/D^NZD(U)R;J_J_AV6['Q2L4Z<5DLE@D9Q',Z
M+XFWU?&-M^(==?RE(KXN#V)^)(W]D;PUE.#G%;\@#>TC,33#(%_O3?+^W8>2
M=O75C$E]R>@9HRL84\V,UG'>&A4SJ+Y3*L:JOE.:@K'5S#U=53K$P^J,:J<<
M3&M&F-:,W^BI]>,%,1J[ULP/)FV)-:D^>%1[YJH9U^-YKZN8:75&=8!FU7?J
ME3%8F/>-/(,V,K=1*8/V62*(S(A$;J9<IM%_)K(\<02-DG_+LN06;Y;CZ<GA
M5;+R?'I3DV=_F5CK_?Z;WM;^+$LM2,Q$8@,D9B$Q&XD-D9B#Q$9(;(S$)DC,
M16)3)#8#884<U<QS5%.E'^4H^E->7";R#(]3GSU1_ER636^5XKF)"8F92&R
MQ"PD9F^Q=H:E5_E//>VZ_G28;4Y+Z,42SIO&Z+3$)^-(&2-W:X+$7"0V16(S
M$%:8[JU\NK>4T_UNS?VE)V?XB@<^+9O<K=.1T]6.AD9?6<FYDQ:)#4J:WSIN
MOH6LT49B0R3F(+$1$ALCL0D2<Y'8%(G-0%@A;;3SM-%6IHU^R)+T_. AF&\S
M!V$+XK,H8C%)!/._D_?I_1]YY;2B?'MQ^8'\I[[2O%56>>YI!!(SD=@ B5E(
MS$9B0R3F(+$1$ANWWSJQFB"K<Y'8%(G-0%@A'77R=-11IJ/I.GJ0>2;+0?)R
MQ5]GMZ7GWG-"%HR3S3+PET0LZ4&^VG@)>4B_\I+;98.6+)S+!%5V=_A66?>Y
M>0F)F4AL@,0L)&8CL2$2<Y#8"(F-MUCK("\UCLYZ)\CZ7"0V16(S$%9(3-T\
M,765B>D^/1=*<POER1^$_E@'XKDLQ2B5<U-,]^2_I+:A718[WSPMU&IKC6*A
M ;)9UFF-3:/5*M9HGQ;26T;[Z&9&B=32C*/[&56D415IC#P*DY(:]<[1*8-[
M6JC1;!PU:UI2R.ATBX5F)4>AHS?S0H5!?9D/ZDOEH/Z6?O$;"Q(&WD,0RA%-
M/I&(S8-%X'OI0HZR :X4SQW@2,Q$8@,D9EV>]EWS^-:%C:QQB,0<)#9"8F,D
M-D%B+A*;(K$9""LD'%W+,TZZ5D>1<DSJT^P4/_MB]XX'3YZ@Y"Z4-48T%J5K
M2I3BN2D'JIE0;0#5+*AF0[4A5'.@V@BJC:':!*JY4&T*U68HK9BG#I;(Z;]R
MA<=.1^4LI&9"M0%4LZ":#=6&4,V!:B.H-H9J$ZCF0K4I5)NAM&+.,EYREJ'^
M"I@SG])Y0A:<123QPM,O<](<MME>]96OWU76<';>,DZOD;7C"Q\36N< JEE0
MS89J0ZCF0+415!M#M0E4<Z':%*K-4%HQ'[TLDM65Z]MZ3OPDSZ(8)]]4&0>Z
M&!:JF5!M -4LJ&9#M2%4<Z#:"*J-H=H$JKE0;0K59BBMF)E>EL;JS5]Z=8=<
M-=B':B94&T U"ZK94&T(U1RH-H)J8Z@V@6HN5)M"M1E**^:LE_6]^AL+? %7
M=\AEBWVH9NJGZWN;)^M[!] Z+:AF0[4A5'.@V@BJC:':!*JY4&T*U68H;9N/
MZ@>_)X\H?\P>WY#(_+*.15K)P=;\$1&?LQ_*'VV_U:\LO62[K5\-R[8[^M5H
M^V"(EVJWSZEP/?X8Q D)Z4(V0;M('^S MX]^V+X1;)7]ROV!"<&B[.62>G/*
MTP+R\P5C8O\FK2!_ $?O?U!+ P04    " !.0FI5=L7BLG0"  #D!0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970S-BYX;6R-5.]OTS 0_5=.84*;Q)8?70N,
M--*Z@D!B4M4R^(#XX";7QIIC!_O2;O\]MI.&#KIJ7QJ??>_=>Z[OTJW2]Z9$
M)'BHA#3CH"2JK\+0Y"56S%RH&J4]62E=,;*A7H>FUL@*#ZI$F$31**P8ET&6
M^KV9SE+5D. 29QI,4U5,/TY0J.TXB(/=QIRO2W(;89;6;(T+I+MZIFT4]BP%
MKU :KB1H7(V#Z_AJ,G+Y/N$[QZW96X-SLE3JW@5?BG$0.4$H,"?'P.QG@S<H
MA".R,GYWG$%?T@'WUSOV3]Z[];)D!F^4^,$+*L?!NP *7+%&T%QM/V/G9^CX
M<B6,_X5MEQL%D#>&5-6!K8**R_;+'KI[V ,DR3. I ,D7G=;R*N<,F)9JM46
MM,NV;&[AK7JT%<>E^U,6I.TIMSC*YFA(-SDUFLLUG,,<<R5S+CCSEZ96\#3C
M*V=+>TJ/<#I%8ER8,X_:SQ%]S@EP"=]*U1@F"Y.&9!6[NF'>J9NTZI)GU+V'
M6R6I-/!1%E@\Q8?6:6\WV=F=)$<)%UA?P"!Z TF4Q'"WF,+IR=D1WD%_C0//
M.WC1-=H(]0;AYUP) ?;U;)DN?AVRW[)>'F9U#7EE:I;C.+ =YSF#[/6K>!1]
M.*+YLM=\>8P]FS#!9([ "*:88[5$#8/87TUT2&O+-O)LKM<W61RGX>: @F&O
M8'A4P8P]VOZF@P^C10[WJIT_5V[4EQN]U+!]!]0Y[A[#(0VC_QQ'_R@(]SJO
M0KWV\\5 KAI);1/VN_T(NVX[]V]Z._]NF5YS:4#@RD*CB[?6NVYG2AN0JGT?
M+Q79J>"7I1W#J%V"/5\I1;O %>@'>_8'4$L#!!0    ( $Y":E7Y1,./IP(
M  4'   9    >&PO=V]R:W-H965T<R]S:&5E=#,W+GAM;*U5RV[;,!#\%4(-
MBA1(HI>EN*DL(+$1-(<60=RTAZ('6EI;1"A2)6DK^?LN)47P0W%[Z$7B8V<X
M0W*722W5DRX #'DNN= 3IS"FNG)=G1504GTA*Q XLY2JI :[:N7J2@'-&U#)
MW<#S8K>D3#AITHS=JS21:\.9@'M%]+HLJ7JY 2[KB>,[KP,/;%48.^"F2457
M, ?S6-TK[+D]2\Y*$)I)010L)\ZU?S6-;7P3\)U!K;?:Q#I92/ED.W?YQ/&L
M(."0&<M \;>!*7!NB5#&[X[3Z9>TP.WV*_MMXQV]+*B&J>0_6&Z*B3-V2 Y+
MNN;F0=:?H?,36;Y,<MU\2=W&QK%#LK4VLNS J*!DHOW3YVX?M@#^Z U T &"
M?P6$'2!LC+;*&ELS:FB:*%D39:.1S3::O6G0Z(8)>XISHW"6(<ZD=V(#PDC%
M0)-SLM4[(U_Q#IW.P%#&]0><?)S/R.G)!W)"F"#?"KG65.0Z<0W*L&1NUBUY
MTRX9O+'D'*H+$GIG)/""8  ^/0Z?089POX'[NW 7S?<[$/0[$#1\X5]VX(7,
MF,ZXU&L%Y.?U0AN%=^S7D+^6<#1,://N2E<T@XF#B:5!;<!)W[_S8^_3D-O_
M1+;C/>R]A\?8TP=:XV4RH!CE@R?9PN,&;@O")@VC\2AQ-]L.!H+&XZ /VE$V
MZI6-CBJ[98+AK<[)2LKA2];BHZU5HR#T]Z0=!EUZX6A86M1+BXYO6GL,FF -
M)?"<@<9DD0LM.1@X(Y@41&-Q/"_EAHD5)DN?4T,VH@.%YT$<?=SS,1 5>I$W
M;"3NC<1'C>QDNP S)"\^.-O8C^(]=8=!E^,XWA/G;A4I^T!\H6K%A"8<E@CS
M+B[1G6J+;MLQLFKJUD(:K()-L\!W"I0-P/FEE.:U8TMA__*E?P!02P,$%
M  @ 3D)J5?Z;GNY@ P  GPL  !D   !X;"]W;W)K<VAE971S+W-H965T,S@N
M>&ULK59=;]HP%/TK5C9-F]0V(5^$#B*50K4]5*KH/AZF/;C)!:PE=F8[T/W[
MV4Z:0G!IM?4%8ON><WWNO;;O>,OX+[$&D.B^+*B8.&LIJW/7%=D:2BS.6 54
MK2P9+[%40[YR1<4!YP94%J[O>;%;8D*==&SF;G@Z9K4L"(4;CD1=EIC_F4+!
MMA-GX#Q,+,AJ+?6$FXXKO();D%^K&ZY&;L>2DQ*H((PB#LN)<S$XGR?:WAA\
M([ 5.]](*[EC[)<>?,XGCJ<W! 5D4C-@];>!2R@*3:2V\;OE=#J7&KC[_<!^
M9;0K+7=8P"4KOI-<KB=.XJ <EK@NY()M/T&K)])\&2N$^47;QC8>.2BKA61E
M"U8[* EM_O%]&X<=@.*Q _P6X/<!X1. H 4$+_40MH#PI1ZB%F"DNXUV$[@9
MEC@=<[9%7%LK-OUAHF_0*EZ$ZCJYE5RM$H63Z6>Z 2H9)R#0*5J  +X!M&"%
MKL$MYCEZ/P.)22$^J/6OMS/T_NT']!81BKZL62TPS<78E6HGFL_-6J_3QJO_
MA-< 73,JUP+-:0ZY!3\[CA\=P;LJ ET8_(<P3/VCA+=0G:' .T&^Y_N6_5R^
M'#ZPR?D_[_-_]KX7C*"KB<#P!<_4Q)^3KB!^Z(I 5TU)_+0EO*$,[93ZMCL7
M%<Y@XJCKS' ZZ;LW@]C[:(OV:Y+-7I-L_DID>WD)N[R$Q]C3*:P(I82NU-58
M8)J!+0\-16PH]".Q24_]X4A5U68WP#:K413O6\TL5H$7>?M6<QM7,@H[JSVM
M4:<U.JKU(LMXC0N;P@88[?D+!SV!AT9!V%-GX0G#7J#F%J/X"6EQ)RT^*FT!
M>=V\DGD-2#(D6)&K"[4]=#;)\<$N_+[@0Y.@GTX+RS#IZ3VT&?IVN<-.[O"H
MW.^<2#AERR52+PK*B:B8@&?T#@_%1$%/\*%-KS!GAQ91%/7T'F/9DYMT<I-G
MLFN.O3!JX3X#(4X0NU,Y!@DG2+V72*CF[+1D&WV2R>/[:PM$8CE;<33JA<)F
ME23]]+^(:_X<5Q,4=Z?C*(&O3*LG4,9J*IN'IIOMNLD+TT3UYJ>#\\N!97ZF
MNL^F67RD;UK7:\S5-2A0 4OERCL;JN3QIAUL!I)5IM^Y8U)U3^9SK3IHX-I
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
M*Q6NM$)';S3%>RB;VM=TM*ALO5D*C=7+-G/\7P!I#'!^)81^ZI@2UOV!)'\
M4$L#!!0    ( $Y":E4H@&@.6P,   P-   9    >&PO=V]R:W-H965T<R]S
M:&5E=#0R+GAM;*U7:V_3,!3]*U9 ""2ZO-JT'6VDK2D""<2T\OB ^. FMVU$
M8@?;6>'?8SM9:!,WG=B^M+9SSKD^UX_<S/:4_>0[ (%^YQGA<VLG1'%IVSS>
M08[Y!2V R"<;RG(L9)=M;5XPP(DFY9GM.4Y@YS@E5CC38S<LG-%29"F!&X9X
MF>>8_;F&C.[GEFO=#]RFVYU0 W8X*_ 65B"^%#=,]NQ&)4ES(#RE!#'8S*TK
M]W+I.HJ@$5]3V/.#-E)6UI3^5)WWR=QRU(P@@U@H"2S_[F !6::4Y#Q^U:)6
M$U,1#]OWZF^U>6EFC3DL:/8M3<1N;DTLE, &EYFXI?MW4!L:*;V89ES_HGV%
M#:86BDLN:%Z3Y0SRE%3_^'>=B ."U#$3O)K@M0G#$P2_)O@/C3"L"<.'1AC5
M!&W=KKSKQ$58X'#&Z!XQA99JJJ&SK]DR7RE1&V4EF'R:2IX(/X#,,D<#M*!Y
M00D0P1'=(#TLQ[A +R,0.,WX*PGZLHK0R^>OT'.4$O1Y1TN.2<)GMI S47IV
M7$>]KJ)Z)Z+ZZ",E8L?1DB20&/A1/W_:P[=E!IHT>/=IN/9Z!5=07"#?>8T\
MQ_,,\UD\G.Z:[#PN^O*_HQ\EPV_VA*_U_/X]\?UJS063)_F':8$KB:%90EUO
ME[S ,<PM>7]Q8'=@A2^>N8'SQI3=IQ2+GE)L^41B1^LP;-9AV*<>KLKU(-,'
M,24QS<&T#)5"H!742^$N'$QG]MUA<@T0;W2,B4PRSC%F:<!,Q@WFR.&H<3CJ
M=5A=,[&\9DS>*N[H(.#$;WGK0ER_Y3_J8KSII.6MBQEZOME;T'@+>KU]*H!A
MD9(MRAJ7KQ$!H]6@$W\\;%GM0ERWA8FZ&,]I6^UB?#\P6QTW5L>/WJCC3MC6
M_EJ<141G$<LN8N"><C=IW$T>L4DG9WV=141G$<LNPG6F9EO3QM:TU]8MR-N]
MC$7)($&'JW=RDT[/6CV+B,XBEEW$P#MQS;C.ORK'Z37[F0J</>0@UCI!WTDT
M8+I'T0#JGD4#R.^LJWU0W>7 MKJLYM)&243U4F]&F]+]2A>LK?%K]W+A&L8C
M5>KK:O*??/6=\!&S;4JX3-Q&AG(NQG)96%5Z5QU!"UU;KJF0E:IN[N3G"C %
MD,\WE(K[C@K0? "%?P%02P,$%     @ 3D)J5<8?F*#J @  /@D  !D   !X
M;"]W;W)K<VAE971S+W-H965T-#,N>&ULK59K;]HP%/TK5E9-G52:%\\.(K6@
M:I4V#95U^VS"!:PZ<6H[T/[[73LA A+8*O4+Q,D])^?<AYWA5LAGM0;0Y#7A
MJ1HY:ZVS&]=5\1H2JJY%!BD^60J94(U+N7)5)H$N+"CA;N!Y73>A+'6BH;TW
ME=%0Y)JS%*:2J#Q)J'R[ RZV(\=W=C<>V6JMS0TW&F9T!3/03]E4XLJM6!8L
M@50QD1()RY%SZ]^,!R;>!OQFL%5[U\0XF0OQ;!8/BY'C&4' (=:&@>+?!L;
MN2%"&2\EIU.]T@#WKW?L]]8[>IE3!6/!_["%7H^<OD,6L*0YUX]B^PU*/QW#
M%PNN["_9EK&>0^)<:9&48%20L+3XIZ]E'O8 ?OL$("@!P?\"PA(06J.%,FMK
M0C6-AE)LB331R&8N;&XL&MVPU%1QIB4^98C3T7? '"C2(C/LCT7.@8@EF>59
MQ@%KI2DG=Y33- 8RLTWUD!:=8TIP.0%-&5=?$/XTFY#+BR_D@K"4_%J+7-%T
MH8:N1HWF36Y<ZKDK] 0G],P@NR:A=T4"+P@:X./S\ G$"/<MW#^$NYB9*CU!
ME9[ \H4G^'YF(-%LNB)%HIH,%0SM9@8SA3<JHS&,'!PS!7(#3O3YD]_UOC;9
M^R"R [-A938\Q[YGEANS1)H1:(EE*\<%50ITH_^"M&M)S::QB?R@W1^ZFWU?
M]:!@$%0Q!W+;E=SVN^1R1N>,,\V:RU20=0YD]OPCF?6@L.,WR^Q4,CMG6^B>
MI79^3C=0YR,;Z(/(#JQV*ZO=LQ692CQ=I'XC./L$7G*6F3VDR7*W7HSPJ!1G
M0P[D]2IYO;/R;CF>6:86BN FAIL]IB!F=B]KTMBK"6C51#;%G&CK?J6R?U;E
MKE^*IB[&[HJDT)C'?NW]WI'">L2)?AY4^@;OT/>/H1O4QOY87SWB6)^[=[J9
M+XL?5*Y8JE# $C'>=0_-R>*T+A9:9/; FPN-QZ>]7.,'#D@3@,^70NC=PIRA
MU2=3]!=02P,$%     @ 3D)J58IKP9D) P  Y@H  !D   !X;"]W;W)K<VAE
M971S+W-H965T-#0N>&ULK99K3]LP%(;_BI6A":1![FG+VDBC%=HD$(C"]ME-
M3EL+)\YLIX5_/]L)H:0AJJI]:>++^Y[SV(U]QEO&G\4:0**7C.9B8JVE+"YM
M6R1KR+"X8 7D:F3)>(:E:O*5+0H..#6BC-J>XT1VADENQ6/3=\_C,2LE)3G<
M<R3*+,/\]0HHVTXLUWKK>""KM=0==CPN\ KF()^*>ZY:=N.2D@QR05B.."PG
MU@_W<NHZ6F!F_":P%3OO2*,L&'O6C5_IQ')T1D AD=H"J\<&ID"I=E)Y_*U-
MK2:F%NZ^O[E?&W@%L\ "IHS^(:E<3ZRAA5)8XI+*![;]"350J/T21H7Y1=MZ
MKF.AI!229;5899"1O'KBEWHA=@1N\(G JP7>H0*_%O@&M,K,8,VPQ/&8LRWB
M>K9RTR]F;8Q:T9!<;^-<<C5*E$[&-Z#60*!S-%=_D+2D@-@279>RY(!NL7H0
M2=2XZC0ST0W!"T*KSM,92$RH.%/RI_D,G9Z<H1-$<O2X9J7 >2K&ME0YZDAV
M4N=S5>7C?9+/'(H+Y#O?D.=X7H=\VB^?0:+DKI&['^6V6IEF>;QF>3SCYW_B
M=U< QY+DJPJ_$ZAR"+H=]&=X*0J<P,12WYD O@$K_OK%C9SO77C_R>P#K-_
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
MQVW6-&2> 2B-0-%TU6K;Q;7>[4_NXJR<.J25>H=4 _59*IIV6S7:GR& 9AJ
MT@@439>M=E%<NXURJ\WID.K@4G029^B946&T4J]> ;IEJ%$L2+O"_]YB!*#%
M(% T7;[:-W'MQLE?2J\74R3CLN@NETS$/#(J9V>-'1319]-T\MH>V5HZ2%H
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
M;6>]\@TE_!5>M^4;JE=,&L)A::%1[[45H.M65T]05;Y;+!3:WN.'I7T=0+L
MN[]4MNR;B3N@?6^RGU!+ P04    " !.0FI52:C\@H()   <<P  &0   'AL
M+W=O<FMS:&5E=',O<VAE970T."YX;6S%G6MOVT86AO_*0%LL6B!KB1=;=M86
M$)MS";!IC3C9_5#T TV-;**\*.3(3HK]\3ND:%%#42.Q?M/]$NO">0YE/>8,
MS\DA+Y_SXO?R44I%OJ9)5EZ-'I5:OAV/R^A1IF%YDB]EIM]9Y$4:*OVT>!B7
MRT*&\WI0FHS=R>1LG(9Q-II=UJ_=%K/+?*62.).W!2E7:1H6WZYEDC]?C9S1
MRPL?XX='5;TPGETNPP=Y)]7GY6VAGXTWE'F<RJR,\XP4<G$U>N>\%?ZT&E!O
M\>]8/I=;CTGU4>[S_/?JR?OYU6A2[9%,9*0J1*A_/,D;F2052>_'EP8ZVL2L
M!FX_?J&S^L/K#W,?EO(F3_X3S]7CU>A\1.9R$:X2]3%_%K+Y0*<5+\J3LOZ7
M/*^WG?HC$JU*E:?-8+T':9RM?X9?FU_$U@!ONF> VPQPCQW@-0.\S@#7W3/
M;P;XQPXX;0:<'CO@K!EP=NR :3-@>NR \V; >?WMKK^.^KL,0A7.+HO\F135
MUII6/:B%J$?KKS#.*G?O5*'?C?4X-0ODO2+_(/HE39#%4YPDDOR<*UF2'P.I
MPC@I?R(_D#@CGQ[S51EF\_)RK'3@:O@X:H($ZR#NGB .^9!GZK$D-)O+N3E^
MK'=XL]?NRUY?NU;@NV5Q0ESG#7$GKDL^WP7DQQ]^(E$AY[%B810GL?K6LYLW
MQU"G-=4YGAK8J;]$ZH1XG7WMP= C=LZ;',2PXS&.!</MF#NY/&IOA!T3R&CS
MN]FS-X8?WL9JK^9Z-JO?9Z4J5OHXJ\BO_](;D/=*IN5O/7MYO:;Y_;1J^GA;
M+L-(7HWT_%#JOQ(YFOW];\[9Y)]]DB%A 1)&D3"&A'$D3(!@AGG^QCS?1I_=
MKHKH4<^E9%G$D>QSS3I^J&M(6("$T37LK(95"ZBGF7,^F5R.G[8=ZMGHM+L1
M1^Z6 ,$,-TXW;IQ:W:B/E;LS;9\D5M!029"P  FC2!A#PC@2)D P0[JSC71G
MT*GP#&D>$A8@810)8T@81\($"&:8-]V8-[5/A46<1?$R3$B8YJM,]=DVW9D
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
M$'H GM]P?+UJ&CI ^TTF_ )02P,$%     @ 3D)J5=2:_ 6# P  =Q   !D
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
M44J-?BPT)(/2 BB-0VD"1=.=7H=D+GC\FYG7VZ?08,QMID"SR;E/H7$7E!9
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
MCBH;EJ4-WAD;?/25Y'S+4)C'$&OT@W[]:8^^+>)1!\5["<K2ZP6\@^(2^<X
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
M%7-Z+:&R =0_D](\5NP S?LK^0-02P,$%     @ 3D)J5>SP6Z07!   5!
M !D   !X;"]W;W)K<VAE971S+W-H965T-3@N>&ULM9AMCZ,V$(#_BD6K]D[J
M!6S"2[9)I'V[ME*OM]KH[CX[,$FL!<S93K(K]<?7!@*I K[EJGX)V'AFGAGL
M&2;S(Q=/<@>@T'.>%7+A[)0JKUQ7)CO(J9SP$@K]9,-%3I4>BJTK2P$TK83R
MS"6>%[HY986SG%=S#V(YYWN5L0(>!)+[/*?BY08R?EPXV#E-/++M3ID)=SDO
MZ196H#Z5#T*/W%9+RG(H).,%$K!9.-?XZH80(U"M^,S@*,_ND7%ES?F3&?R1
M+AS/$$$&B3(JJ+X<X!:RS&C2'%\;I4YKTPB>WY^TOZ^<U\ZLJ81;GGUAJ=HM
MG-A!*6SH/E./_/@[- X%1E_",UG]HF.]-O(=E.REXGDCK ER5M17^MP$XDS
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
MLFK.JXD66]<0/PAMVFLWS,P'#4J[P/R_%D(?)M9 \XD4_PM02P,$%     @
M3D)J51<W"D+: @  < H  !D   !X;"]W;W)K<VAE971S+W-H965T-C N>&UL
MM99=;YLP%(;_BL6JJ97:0"!-JBQ!:L.F56JUJ%&WBVD7+IP$J]AFMI-T_W['
M0&C24=1*[";!YKR/?5Y_<"9;J1YU"F#($\^$GCJI,?G8=76< J>Z)W,0^&8I
M%:<&FVKEZEP!30H1SUS?\X8NITPXX:3HFZMP(M<F8P+FBN@UYU3]N8),;J=.
MW]EUW+%5:FR'&TYRNH(%F/M\KK#EUI2$<1":24$4+*?.97\<C6Q\$?"=P5;O
M/1.;R8.4C[9QG4P=STX(,HB-)5#\V\ ,LLR"<!J_*Z93#VF%^\\[^I<B=\SE
M@6J8R>P'2TPZ=2X<DL"2KC-S)[=?H<KGW/)BF>GBEVS+V.' (?%:&\DK,<Z
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
M5YRBW$4I3Q3?%N_D'[E2/"L.-T!C$'D#_?V*ZR5'=9(;U'M9L_\!4$L#!!0
M   ( $Y":E6FN6W-# ,  ( ,   9    >&PO=V]R:W-H965T<R]S:&5E=#8R
M+GAM;+5776^;,!3]*Q:KID[JPD>^NP2I#9O6:9VBIMT>ICTX<)-8-3:SG:3Y
M][.!TE!15C3V K:YY_B>8W2Y3/9<W,L-@$(/,65R:FV42LYM6X8;B+'L\ 28
M?K+B(L9*3\7:EHD '*6@F-J>XPSL&!-F^9-T;2[\"=\J2AC,!9+;.,;B< F4
M[Z>6:STNW)#U1ID%VY\D> T+4'?)7.B97;!$) 8F"6=(P&IJ7;CGP=C$IP'?
M">SET1@9)4O.[\WD*II:CDD(*(3*,&!]V\$,*#5$.HW?.:=5;&F Q^-']D^I
M=JUEB27,./U!(K696B,+1;#"6ZIN^/XSY'KZAB_D5*97M,]C'0N%6ZEXG(-U
M!C%AV1T_Y#X< =S>"P O!WBO!71S0/<YH/\"H)<#>JDSF934AP K[$\$WR-A
MHC6;&:1FIF@MGS!S[ LE]%.B<<J_ 8H51&B.A3J@6X&9Q-F)G :@,*'R'7J/
M B+T.7&AAY[C>6@N>$RDY.* OG$%>OEN$:#3DW?H!!&&K@FEFD).;*53-!O9
M89Y.D*7CO9".BZXY4QN)/K((HC+>UM(*?=ZCODNOEO#+EG60.SPS>7<K\IG5
MPQ>0:/@@A7M5<EX![SI5\)*:;G%:W92OV_BT?G[5H>A*02Q_5>1YF?'VJGE-
M;3F7"0YA:NGB(4'LP/+?OG$'SH<JS]HD"UHB*_G9*_SLU;'[%S'?,B417R'U
M9&:5?[4\3?W+R-SLE$UAWOE.IS^Q=\>^_"6HI+=?Z.W7ZKUB"G1^"@G]&E7)
MK(4WE9F1C4L"G-$SF2WM6+)C4-@QJ+7CEBM,$25X22A1ARI#:@F:&M(F63!H
M\'X,"T.&M88L0F!8$'Z&]$<50BQ5E2>U'$T]:9,L:(FLY-VH\&[TGVKSJ$T_
MVR0+6B(K^3DN_!S_6ZT:5Y07MUQ=9K5;-'6C);+,#?NH9XM!K-/>5Z+0?)"R
M]JU8+=KKB[2KM)_"L][\&HLU81)16&FHTQGJFBJR?C>;*)ZD'>"2*]U/IL.-
M_D4 80+T\Q7735P^,1L4/QW^'U!+ P04    " !.0FI5*-=WGD4&  "110
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
M',$4@ 8,"4/S'-Q['@7U<RK8_DL]^0M02P,$%     @ 3D)J59>*NQS
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
M;',O=V]R:V)O;VLN>&UL+G)E;'/-V3MNVT 4A>&M"%R 1_<UM@/+51JW@3=
MR*,'+(D$AT'LW4>0"^D0*=(8/!4Q)'CY%\0'8OCTJQS:<=^=ZF[?U\7'\7"J
MJV8WCOV/E.IZ5XYMO>OZ<CI?V73#L1W/RV&;^G;]WFY+TN4RI^%V1O/\=#MS
M\?K9E_^9V&TV^W7YV:U_'\MI_,?@]*<;WNNNE+%9O+;#MHRK)GT<KJ=KNASD
M[CRY6;R\K9KAY4V:-'>00I#.'V009/,'.03Y_$$!03%_4(:@/'_0/03=SQ_T
M $$/\P<]0M#C_$&R1!F7!$D3K FT%N1:"+P6!%L(Q!8D6PC,%D1;"-069%L(
MW!:$6PCD%J1;".P6Q%L(]%;46PGT5M1;"?36R<<V@=Z*>BN!WHIZ*X'>BGHK
M@=Z*>BN!WHIZ*X'>BGHK@=Z*>BN!WH9Z&X'>AGH;@=Z&>AN!WC;9+"'0VU!O
M(]#;4&\CT-M0;R/0VU!O(]#;4&\CT-M0;R/0VU%O)]#;46\GT-M1;R?0VU%O
M)]#;)YO=!'H[ZNT$>COJ[01Z.^KM!'H[ZNT$>COJ[01Z!^H=!'H'ZAT$>@?J
M'01Z!^H=!'H'ZAT$>L?D9R6!WH%Z!X'>@7H'@=Z!>@>!WH%Z!X'>&?7.!'IG
MU#L3Z)U1[TR@=T:]\W?J7<?/0ZG7GJ\U/O\[J1[/]Y;KXR_+KY.35^6"<[JM
MJ,]_ 5!+ P04    " !.0FI5[M7M&.8!  #U)   $P   %M#;VYT96YT7U1Y
M<&5S72YX;6S-VEU/PC 4!N"_0G9K6.G7_(APH]ZJ%_Z!NAUD85N;MB#\>[L!
M)AHE&DQ\;UB@[7G/>I+GBNNGK:,PVK1-%Z;9(D9WQ5@H%]2:D%M'75J96]^:
MF+[Z%^9,N30OQ,1D4K#2=I&Z.(Y]C6QV?4MSLVKBZ&Z3?@ZU[::9IR9DHYO=
MQCYKFAGGFKHT,:VS=5=]2AGO$_)T<M@3%K4+9VE#QKY,Z%>^#]B?>UB3]W5%
MHT?CX[UITRZV:5B(VX9"?KS$%SW:^;PNJ;+EJDU'\N \F2HLB&+;Y+NB9\>3
M8[IAVGWRD_.',L<"T\Y';UU($_/T^[C#2/K38Y<*D8_U\5=\3TRE3WX_ZJ==
M4?7#['2]K]8OAWD$-CQ.O^./,WZO_\L^!$@?$J0/!=*'!NFC .GC'*2/"Y ^
M+D'ZX!.41E!$Y2BD<A13.0JJ'$55CL(J1W&5H\#*4605*+(*%%D%BJP"15:!
M(JM D56@R"I09!4HL@H4626*K!)%5HDBJT215:+(*E%DE2BR2A19)8JL$D56
MA2*K0I%5H<BJ4&15*+(J%%D5BJP*15:%(JM"D56CR*I19-4HLFH4636*K!I%
M5HTBJT:15:/(JE%D+5!D+5!D+5!D+?Y3UF=KEW\</SSSUM3=(9\-_W::O0%0
M2P$"% ,4    " !.0FI5!T%-8H$   "Q    $               @ $
M9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( $Y":E61$/,O[0   "L"   1
M              "  :\   !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4 Q0    (
M $Y":E697)PC$ 8  )PG   3              "  <L!  !X;"]T:&5M92]T
M:&5M93$N>&UL4$L! A0#%     @ 3D)J54)^9V;P!0  OA\  !@
M     ("!# @  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4 Q0    (
M $Y":E5M,Y=8! <  (8=   8              " @3(.  !X;"]W;W)K<VAE
M971S+W-H965T,BYX;6Q02P$"% ,4    " !.0FI59,S\84 #  "U"P  &
M            @(%L%0  >&PO=V]R:W-H965T<R]S:&5E=#,N>&UL4$L! A0#
M%     @ 3D)J5;+\\/]1!@  KAX  !@              ("!XA@  'AL+W=O
M<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    ( $Y":E4?HWM;R@X  "BK
M   8              " @6D?  !X;"]W;W)K<VAE971S+W-H965T-2YX;6Q0
M2P$"% ,4    " !.0FI5OYH2'!<*  #I.   &               @(%I+@
M>&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%     @ 3D)J53+;=2,O
M @  V00  !@              ("!MC@  'AL+W=O<FMS:&5E=',O<VAE970W
M+GAM;%!+ 0(4 Q0    ( $Y":E4988I_RA@  %9:   8              "
M@1L[  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"% ,4    " !.0FI5
MT\-EO[D2   5,@  &               @($;5   >&PO=V]R:W-H965T<R]S
M:&5E=#DN>&UL4$L! A0#%     @ 3D)J5>1BIAR:!   2 H  !D
M     ("!"F<  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q02P$"% ,4
M" !.0FI5F_,;*P$$   ="0  &0              @(';:P  >&PO=V]R:W-H
M965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( $Y":E5IJ_>H)0H  +HR   9
M              " @1-P  !X;"]W;W)K<VAE971S+W-H965T,3(N>&UL4$L!
M A0#%     @ 3D)J52VY\ERK#@  73(  !D              ("!;WH  'AL
M+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4    " !.0FI5W%<$%F0%
M  #S#   &0              @(%1B0  >&PO=V]R:W-H965T<R]S:&5E=#$T
M+GAM;%!+ 0(4 Q0    ( $Y":E4K^L"EA1   -$W   9              "
M@>R.  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L! A0#%     @ 3D)J
M52"H$!VB @  \@4  !D              ("!J)\  'AL+W=O<FMS:&5E=',O
M<VAE970Q-BYX;6Q02P$"% ,4    " !.0FI5QY&;9*0%   =#0  &0
M        @(&!H@  >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;%!+ 0(4 Q0
M   ( $Y":E7WW!C>M ,  '\(   9              " @5RH  !X;"]W;W)K
M<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ 3D)J53[YEE0E!@  &A(
M !D              ("!1ZP  'AL+W=O<FMS:&5E=',O<VAE970Q.2YX;6Q0
M2P$"% ,4    " !.0FI5/9<Y4E@6   B4@  &0              @(&CL@
M>&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    ( $Y":E6:^K+0
M4P0  +T*   9              " @3+)  !X;"]W;W)K<VAE971S+W-H965T
M,C$N>&UL4$L! A0#%     @ 3D)J5=%)"FNB @  U04  !D
M ("!O,T  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q02P$"% ,4    " !.
M0FI5/WC_J9@#  #P!P  &0              @(&5T   >&PO=V]R:W-H965T
M<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( $Y":E5;O!3(D@,  /$'   9
M          " @634  !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL4$L! A0#
M%     @ 3D)J56#:N+\C!0  .Q(  !D              ("!+=@  'AL+W=O
M<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    " !.0FI5OR=T:)$%  "C
M#@  &0              @(&'W0  >&PO=V]R:W-H965T<R]S:&5E=#(V+GAM
M;%!+ 0(4 Q0    ( $Y":E69K.FNK <  "%3   9              " @4_C
M  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#%     @ 3D)J5?BO
MA;F( P  '!   !D              ("!,NL  'AL+W=O<FMS:&5E=',O<VAE
M970R."YX;6Q02P$"% ,4    " !.0FI5&+]GV[P"  !_!P  &0
M    @('Q[@  >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+ 0(4 Q0    (
M $Y":E7@+Q_K5 0  ",8   9              " @>3Q  !X;"]W;W)K<VAE
M971S+W-H965T,S N>&UL4$L! A0#%     @ 3D)J5=:N)^S2 P  =!,  !D
M             ("!;_8  'AL+W=O<FMS:&5E=',O<VAE970S,2YX;6Q02P$"
M% ,4    " !.0FI5.CF%B-T"  "&"P  &0              @(%X^@  >&PO
M=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    ( $Y":E5!*PS U@,
M %P,   9              " @8S]  !X;"]W;W)K<VAE971S+W-H965T,S,N
M>&UL4$L! A0#%     @ 3D)J51SJ-YDP$0  & L! !D              ("!
MF0$! 'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"% ,4    " !.0FI5
M[XI[U,T&  ",0P  &0              @($ $P$ >&PO=V]R:W-H965T<R]S
M:&5E=#,U+GAM;%!+ 0(4 Q0    ( $Y":E5VQ>*R= (  .0%   9
M      " @00: 0!X;"]W;W)K<VAE971S+W-H965T,S8N>&UL4$L! A0#%
M  @ 3D)J5?E$PX^G @  !0<  !D              ("!KQP! 'AL+W=O<FMS
M:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    " !.0FI5_IN>[F #  "?"P
M&0              @(&-'P$ >&PO=V]R:W-H965T<R]S:&5E=#,X+GAM;%!+
M 0(4 Q0    ( $Y":E4%DKR'!@(  !T$   9              " @20C 0!X
M;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#%     @ 3D)J56WYH,>2
M"   15D  !D              ("!824! 'AL+W=O<FMS:&5E=',O<VAE970T
M,"YX;6Q02P$"% ,4    " !.0FI5I;QI3IH"  "-"   &0
M@($J+@$ >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+ 0(4 Q0    ( $Y"
M:E4H@&@.6P,   P-   9              " @?LP 0!X;"]W;W)K<VAE971S
M+W-H965T-#(N>&UL4$L! A0#%     @ 3D)J5<8?F*#J @  /@D  !D
M         ("!C30! 'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6Q02P$"% ,4
M    " !.0FI5BFO!F0D#  #F"@  &0              @(&N-P$ >&PO=V]R
M:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    ( $Y":E45$!NE]@(  -,)
M   9              " @>XZ 0!X;"]W;W)K<VAE971S+W-H965T-#4N>&UL
M4$L! A0#%     @ 3D)J58:T>][I!P  [4(  !D              ("!&SX!
M 'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6Q02P$"% ,4    " !.0FI54W?O
M.GX"  ![!@  &0              @($[1@$ >&PO=V]R:W-H965T<R]S:&5E
M=#0W+GAM;%!+ 0(4 Q0    ( $Y":E5)J/R"@@D  !QS   9
M  " @?!( 0!X;"]W;W)K<VAE971S+W-H965T-#@N>&UL4$L! A0#%     @
M3D)J57D]MB1P P  GQ$  !D              ("!J5(! 'AL+W=O<FMS:&5E
M=',O<VAE970T.2YX;6Q02P$"% ,4    " !.0FI5U)K\!8,#  !W$   &0
M            @(%05@$ >&PO=V]R:W-H965T<R]S:&5E=#4P+GAM;%!+ 0(4
M Q0    ( $Y":E41V"B78PH  .V"   9              " @0I: 0!X;"]W
M;W)K<VAE971S+W-H965T-3$N>&UL4$L! A0#%     @ 3D)J5=L.-I?<!
M]AT  !D              ("!I&0! 'AL+W=O<FMS:&5E=',O<VAE970U,BYX
M;6Q02P$"% ,4    " !.0FI5B]S:0WH(  !Y8P  &0              @(&W
M:0$ >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;%!+ 0(4 Q0    ( $Y":E7B
M,O'@/@D  !I@   9              " @6AR 0!X;"]W;W)K<VAE971S+W-H
M965T-30N>&UL4$L! A0#%     @ 3D)J5;#J26%2!0  KRP  !D
M     ("!W7L! 'AL+W=O<FMS:&5E=',O<VAE970U-2YX;6Q02P$"% ,4
M" !.0FI5%@*GIDP$  "-%P  &0              @(%F@0$ >&PO=V]R:W-H
M965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0    ( $Y":E7XC3B#6@,  (L)   9
M              " @>F% 0!X;"]W;W)K<VAE971S+W-H965T-3<N>&UL4$L!
M A0#%     @ 3D)J5>SP6Z07!   5!   !D              ("!>HD! 'AL
M+W=O<FMS:&5E=',O<VAE970U."YX;6Q02P$"% ,4    " !.0FI5NX#0;7,#
M   N#0  &0              @('(C0$ >&PO=V]R:W-H965T<R]S:&5E=#4Y
M+GAM;%!+ 0(4 Q0    ( $Y":E47-PI"V@(  ' *   9              "
M@7*1 0!X;"]W;W)K<VAE971S+W-H965T-C N>&UL4$L! A0#%     @ 3D)J
M5>:@@:X>!   UQH  !D              ("!@Y0! 'AL+W=O<FMS:&5E=',O
M<VAE970V,2YX;6Q02P$"% ,4    " !.0FI5IKEMS0P#  " #   &0
M        @('8F $ >&PO=V]R:W-H965T<R]S:&5E=#8R+GAM;%!+ 0(4 Q0
M   ( $Y":E4HUW>>108  )%%   9              " @1N< 0!X;"]W;W)K
M<VAE971S+W-H965T-C,N>&UL4$L! A0#%     @ 3D)J56)HJK=B P  LA8
M  T              ( !EZ(! 'AL+W-T>6QE<RYX;6Q02P$"% ,4    " !.
M0FI5EXJ[',     3 @  "P              @ $DI@$ 7W)E;',O+G)E;'-0
M2P$"% ,4    " !.0FI5%A*_RP,%  "8*0  #P              @ $-IP$
M>&PO=V]R:V)O;VLN>&UL4$L! A0#%     @ 3D)J52=EU:4, @  A"4  !H
M             ( !/:P! 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L!
M A0#%     @ 3D)J5>[5[1CF 0  ]20  !,              ( !@:X! %M#
G;VYT96YT7U1Y<&5S72YX;6Q02P4&     $< 1P!H$P  F+ !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<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>80
<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>81
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.2.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>280</ContextCount>
  <ElementCount>306</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>77</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>6</UnitCount>
  <MyReports>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - 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-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>0000002 - 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-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>0000003 - 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-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>0000004 - Statement - Condensed Consolidated Statements of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations</Role>
      <ShortName>Condensed Consolidated Statements of Operations</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>0000005 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity</Role>
      <ShortName>Condensed Consolidated Statements of Changes in Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>0000006 - Statement - Condensed Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>0000007 - 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>7</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>0000008 - 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>8</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>0000009 - Disclosure - Restructuring</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/Restructuring</Role>
      <ShortName>Restructuring</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>0000010 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>0000011 - 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>11</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>0000012 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>0000013 - Disclosure - Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/Debt</Role>
      <ShortName>Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>0000014 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>0000015 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>0000016 - 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>16</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>0000017 - Disclosure - Other Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/OtherIncome</Role>
      <ShortName>Other Income</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>0000018 - Disclosure - Related Party Transaction</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/RelatedPartyTransaction</Role>
      <ShortName>Related Party Transaction</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>0000019 - Disclosure - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>0000020 - 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>20</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>0000021 - 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>21</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>0000022 - 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>22</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>0000023 - 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>23</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>0000024 - 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>24</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>0000025 - 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>25</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>0000026 - 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>26</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>0000027 - 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>27</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>0000028 - 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>28</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>0000029 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Geographic information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Geographic information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>0000030 - 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>30</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>0000031 - 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>31</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>0000032 - 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>32</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>0000033 - 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>33</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>0000034 - 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>34</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>0000035 - 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>35</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>0000036 - 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>36</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>0000037 - 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>37</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>0000038 - 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>38</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>0000039 - Disclosure - Inventories - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/InventoriesNarrativeDetails</Role>
      <ShortName>Inventories - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>0000040 - 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>40</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>0000041 - 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>41</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>0000042 - 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>42</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>0000043 - 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>43</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>0000044 - 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>44</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>0000045 - 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>45</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>0000046 - 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>46</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>0000047 - Disclosure - Debt - Promissory Note Payable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails</Role>
      <ShortName>Debt - Promissory Note Payable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>0000048 - Disclosure - Debt - Streeterville Notes (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails</Role>
      <ShortName>Debt - Streeterville Notes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>0000049 - 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>49</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>0000050 - 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>50</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>0000051 - Disclosure - Stockholders' Equity - June 2022 and December 2021 Private Placement (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails</Role>
      <ShortName>Stockholders' Equity - June 2022 and December 2021 Private Placement (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>0000052 - Disclosure - Stockholders' Equity - June 2021 Equity Offering (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails</Role>
      <ShortName>Stockholders' Equity - June 2021 Equity Offering (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>0000053 - 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>53</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>0000054 - Disclosure - Stockholders' Equity - June 2020 Equity Offering (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails</Role>
      <ShortName>Stockholders' Equity - June 2020 Equity Offering (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>0000055 - Disclosure - Stockholders' Equity - Outstanding Warrants from the January 2020 Equity Offering (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails</Role>
      <ShortName>Stockholders' Equity - Outstanding Warrants from the January 2020 Equity Offering (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>0000056 - 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>56</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>0000057 - 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>57</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>0000058 - 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>58</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>0000059 - 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>59</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>0000060 - 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>60</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>0000061 - Disclosure - Other Income (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/OtherIncomeDetails</Role>
      <ShortName>Other Income (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/OtherIncome</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>0000062 - Disclosure - Related Party Transaction (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails</Role>
      <ShortName>Related Party Transaction (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/RelatedPartyTransaction</ParentRole>
      <Position>62</Position>
    </Report>
    <Report instance="efoi-20220930.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>0000063 - 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>63</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 4 fact(s) appearing in ix:hidden were eligible for transformation: dei:EntityRegistrantName, efoi:StandardProductWarrantyNumberofYears, us-gaap:StockholdersEquityNoteStockSplitConversionRatio1 -  efoi-20220930.htm 4</Log>
    <Log type="Warning">[dqc-0015-Negative-Values] Fact us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation has a value of -1000 which is less than zero. This element should not have a negative value. The preparer should consider if the value is input correctly for this assertion and, after considering the appropriateness of the input, if incorrect, input the amount as a positive (i.e., absolute) value and provide a negated label. The properties of this us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation fact are: Context: ifd1bbf617dff477388a74c471593dff4_D20210701-20210930, Unit: usd, Rule Element Id: 240. efoi-20220930.htm 4</Log>
    <Log type="Warning">[dqc-0015-Negative-Values] Fact us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation has a value of -1000 which is less than zero. This element should not have a negative value. The preparer should consider if the value is input correctly for this assertion and, after considering the appropriateness of the input, if incorrect, input the amount as a positive (i.e., absolute) value and provide a negated label. The properties of this us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation fact are: Context: ifd1bbf617dff477388a74c471593dff4_D20210701-20210930, Unit: usd, Rule Element Id: 1950. efoi-20220930.htm 4</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-Q" original="efoi-20220930.htm">efoi-20220930.htm</File>
    <File>a20220930exhibit10110-q.htm</File>
    <File>a20220930exhibit10310-q.htm</File>
    <File>a20220930exhibit10410-q.htm</File>
    <File>a20220930exhibit10510-q.htm</File>
    <File>a20220930exhibit31110-q.htm</File>
    <File>a20220930exhibit32110-q.htm</File>
    <File>efoi-20220930.xsd</File>
    <File>efoi-20220930_cal.xml</File>
    <File>efoi-20220930_def.xml</File>
    <File>efoi-20220930_lab.xml</File>
    <File>efoi-20220930_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="812">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="30">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>84
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "efoi-20220930.htm": {
   "axisCustom": 1,
   "axisStandard": 27,
   "contextCount": 280,
   "dts": {
    "calculationLink": {
     "local": [
      "efoi-20220930_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "efoi-20220930_def.xml"
     ]
    },
    "inline": {
     "local": [
      "efoi-20220930.htm"
     ]
    },
    "labelLink": {
     "local": [
      "efoi-20220930_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "efoi-20220930_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "efoi-20220930.xsd"
     ],
     "remote": [
      "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/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.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",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd",
      "https://xbrl.sec.gov/country/2022/country-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd"
     ]
    }
   },
   "elementCount": 517,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2022": 1,
    "http://www.energyfocusinc.com/20220930": 2,
    "http://xbrl.sec.gov/dei/2022": 6,
    "total": 9
   },
   "keyCustom": 53,
   "keyStandard": 253,
   "memberCustom": 35,
   "memberStandard": 40,
   "nsprefix": "efoi",
   "nsuri": "http://www.energyfocusinc.com/20220930",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0000001 - Document - Cover Page",
     "role": "http://www.energyfocusinc.com/role/CoverPage",
     "shortName": "Cover Page",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "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-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000010 - Disclosure - Inventories",
     "role": "http://www.energyfocusinc.com/role/Inventories",
     "shortName": "Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000011 - Disclosure - Property and Equipment",
     "role": "http://www.energyfocusinc.com/role/PropertyandEquipment",
     "shortName": "Property and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeFinanceLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000012 - Disclosure - Leases",
     "role": "http://www.energyfocusinc.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeFinanceLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000013 - Disclosure - Debt",
     "role": "http://www.energyfocusinc.com/role/Debt",
     "shortName": "Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000014 - Disclosure - Income Taxes",
     "role": "http://www.energyfocusinc.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000015 - Disclosure - Stockholders' Equity",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquity",
     "shortName": "Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000016 - Disclosure - Commitments and Contingencies",
     "role": "http://www.energyfocusinc.com/role/CommitmentsandContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherIncomeAndOtherExpenseDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000017 - Disclosure - Other Income",
     "role": "http://www.energyfocusinc.com/role/OtherIncome",
     "shortName": "Other Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherIncomeAndOtherExpenseDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000018 - Disclosure - Related Party Transaction",
     "role": "http://www.energyfocusinc.com/role/RelatedPartyTransaction",
     "shortName": "Related Party Transaction",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000019 - Disclosure - Subsequent Events",
     "role": "http://www.energyfocusinc.com/role/SubsequentEvents",
     "shortName": "Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000002 - 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-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000020 - 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-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000021 - 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-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000022 - Disclosure - Restructuring (Tables)",
     "role": "http://www.energyfocusinc.com/role/RestructuringTables",
     "shortName": "Restructuring (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000023 - Disclosure - Inventories (Tables)",
     "role": "http://www.energyfocusinc.com/role/InventoriesTables",
     "shortName": "Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000024 - Disclosure - Property and Equipment (Tables)",
     "role": "http://www.energyfocusinc.com/role/PropertyandEquipmentTables",
     "shortName": "Property and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000025 - Disclosure - Leases (Tables)",
     "role": "http://www.energyfocusinc.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000026 - Disclosure - Stockholders' Equity (Tables)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityTables",
     "shortName": "Stockholders' Equity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:ConcentrationRiskCreditRisk",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i4d7fb0d31bca438baa1a780ce7f8a55f_D20220701-20220930",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000027 - 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-20220930.htm",
      "contextRef": "i4d7fb0d31bca438baa1a780ce7f8a55f_D20220701-20220930",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000028 - 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-20220930.htm",
      "contextRef": "ib6c4d1b96db94b7e96e122931182a3d1_D20220701-20220930",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i4068fc9bca6746ad9993ef75d567d291_D20220701-20220930",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000029 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Geographic information (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Geographic information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i4068fc9bca6746ad9993ef75d567d291_D20220701-20220930",
      "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-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000003 - 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-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "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",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000030 - 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
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i7d95b9eb53cd427c85ff41ec3ef9c73b_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000031 - 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-20220930.htm",
      "contextRef": "i7d95b9eb53cd427c85ff41ec3ef9c73b_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:StandardProductWarrantyPolicy",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i9d2ec8f43f314ebcae8cfdecdf9fde7d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "efoi:StandardProductWarrantyNumberofYears",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000032 - 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",
       "div",
       "us-gaap:StandardProductWarrantyPolicy",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i9d2ec8f43f314ebcae8cfdecdf9fde7d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "efoi:StandardProductWarrantyNumberofYears",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i682c94a884c54808853513b639aaddba_I20220630",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000033 - 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-20220930.htm",
      "contextRef": "i682c94a884c54808853513b639aaddba_I20220630",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ie0406c176cd64530aa241398cd71c792_D20210601-20210630",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:PaymentsForClearingFees",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000034 - 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
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringCosts",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000035 - 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-20220930.htm",
      "contextRef": "i8d5a9099f5794e149564f34403f84182_I20220823",
      "decimals": "2",
      "lang": "en-US",
      "name": "efoi:CommonStockClosingBidPriceThreshold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ia1df6a9ccabb4f79b31bd886a2658fa8_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringReserve",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000036 - 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",
       "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ia1df6a9ccabb4f79b31bd886a2658fa8_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringReserve",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryRawMaterials",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000037 - 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-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryRawMaterials",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i682c94a884c54808853513b639aaddba_I20220630",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:InventoryValuationReservesRawMaterials",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000038 - 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-20220930.htm",
      "contextRef": "i682c94a884c54808853513b639aaddba_I20220630",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:InventoryValuationReservesRawMaterials",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationInventory1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000039 - Disclosure - Inventories - Narrative (Details)",
     "role": "http://www.energyfocusinc.com/role/InventoriesNarrativeDetails",
     "shortName": "Inventories - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationInventory1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000004 - Statement - Condensed Consolidated Statements of Operations",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations",
     "shortName": "Condensed Consolidated Statements of Operations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000040 - 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",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iccb5853c99c2404bb5efc9cb815cab83_I20211231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "4",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000041 - 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-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "4",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseDiscountRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubleaseIncome",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000042 - 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",
       "ix:continuation",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubleaseIncome",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000043 - 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",
       "efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "lang": "en-US",
      "name": "efoi:FinanceLeaseRightOfUseAssetGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000044 - 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",
       "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000045 - 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",
       "efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i9446277efb414c7394ebb1b0c8aebd3d_I20200811",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:DebtInstrumentNumberOfCreditFacilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "creditfacility",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000046 - 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-20220930.htm",
      "contextRef": "i9446277efb414c7394ebb1b0c8aebd3d_I20200811",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:DebtInstrumentNumberOfCreditFacilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "creditfacility",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionAmountsOfTransaction",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000047 - Disclosure - Debt - Promissory Note Payable (Details)",
     "role": "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
     "shortName": "Debt - Promissory Note Payable (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i7bb635b2936646fd95b0eba62bd3b2a0_D20220401-20220430",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProceedsFromIssuanceOfDebt",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000048 - Disclosure - Debt - Streeterville Notes (Details)",
     "role": "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
     "shortName": "Debt - Streeterville Notes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "if6e668f6124e450d84a74981dedfb0ee_I20220421",
      "decimals": "-5",
      "lang": "en-US",
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:GainLossOnForgivenessOfDebt",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000049 - Disclosure - Debt - PPP Loan (Details)",
     "role": "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
     "shortName": "Debt - PPP Loan (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "id2a97eb146344d1f80c8b08ffc710bfe_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000005 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
     "shortName": "Condensed Consolidated Statements of Changes in Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i2e5cb75f952146cfafd3f50cee3d0f62_D20210101-20210331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iccb5853c99c2404bb5efc9cb815cab83_I20211231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000050 - 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-20220930.htm",
      "contextRef": "iccb5853c99c2404bb5efc9cb815cab83_I20211231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ie0406c176cd64530aa241398cd71c792_D20210601-20210630",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:PaymentsForClearingFees",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000051 - Disclosure - Stockholders' Equity - June 2022 and December 2021 Private Placement (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails",
     "shortName": "Stockholders' Equity - June 2022 and December 2021 Private Placement (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ie0406c176cd64530aa241398cd71c792_D20210601-20210630",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:PaymentsForClearingFees",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000052 - Disclosure - Stockholders' Equity - June 2021 Equity Offering (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
     "shortName": "Stockholders' Equity - June 2021 Equity Offering (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PreferredStockSharesAuthorized",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000053 - 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-20220930.htm",
      "contextRef": "i0f75433f2ab04afc9e0f49ca98b865a5_I20200115",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ie0406c176cd64530aa241398cd71c792_D20210601-20210630",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:PaymentsForClearingFees",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000054 - Disclosure - Stockholders' Equity - June 2020 Equity Offering (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
     "shortName": "Stockholders' Equity - June 2020 Equity Offering (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:ClassOfWarrantOrRightWarrantsIssued",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000055 - Disclosure - Stockholders' Equity - Outstanding Warrants from the January 2020 Equity Offering (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails",
     "shortName": "Stockholders' Equity - Outstanding Warrants from the January 2020 Equity Offering (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000056 - 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",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i3907598e54964033bfdff8d85a946082_D20220101-20220930",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000057 - 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-20220930.htm",
      "contextRef": "i3907598e54964033bfdff8d85a946082_D20220101-20220930",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iccb5853c99c2404bb5efc9cb815cab83_I20211231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000058 - 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",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iccb5853c99c2404bb5efc9cb815cab83_I20211231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000059 - 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",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ie4c9f0482b664da7bec8b76bf482f1c1_I20211231",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000006 - Statement - Condensed Consolidated Statements of Cash Flows",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
     "shortName": "Condensed Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5463b0d043af4256b97cb9f8f2d4f6c2_D20220701-20220930",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:OtherNoncashIncome",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PurchaseObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000060 - 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-20220930.htm",
      "contextRef": "iaba68d5a70d14ff5a89c129277c344a3_I20220930",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PurchaseObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ifd1bbf617dff477388a74c471593dff4_D20210701-20210930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000061 - Disclosure - Other Income (Details)",
     "role": "http://www.energyfocusinc.com/role/OtherIncomeDetails",
     "shortName": "Other Income (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "ifd1bbf617dff477388a74c471593dff4_D20210701-20210930",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionAmountsOfTransaction",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000062 - Disclosure - Related Party Transaction (Details)",
     "role": "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails",
     "shortName": "Related Party Transaction (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i5ef4692f33344306b5129fd65e2fc358_D20220916-20220916",
      "decimals": "2",
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i7bb635b2936646fd95b0eba62bd3b2a0_D20220401-20220430",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProceedsFromIssuanceOfDebt",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000063 - 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-20220930.htm",
      "contextRef": "i0f027af04d83467b80f12eee9555de10_D20220901-20220930",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ProceedsFromIssuanceOfDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000007 - Disclosure - Nature of Operations",
     "role": "http://www.energyfocusinc.com/role/NatureofOperations",
     "shortName": "Nature of Operations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000008 - 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-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000009 - Disclosure - Restructuring",
     "role": "http://www.energyfocusinc.com/role/Restructuring",
     "shortName": "Restructuring",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20220930.htm",
      "contextRef": "i6f0215f18b3d483db4be338a660d3d4d_D20220101-20220930",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 77,
   "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r499"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r500"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r497"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r497"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r497"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r502"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r497"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r497"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r497"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r497"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r496"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r498"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "efoi_A2021StreetervilleNoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2021 Streeterville Note",
        "label": "2021 Streeterville Note [Member]",
        "terseLabel": "2021 Streeterville Note"
       }
      }
     },
     "localname": "A2021StreetervilleNoteMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_A2022PromissoryNoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2022 Promissory Note [Member]",
        "label": "2022 Promissory Note [Member]",
        "terseLabel": "2022 Promissory Note"
       }
      }
     },
     "localname": "A2022PromissoryNoteMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_A2022StreetervilleNoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2022 Streeterville Note",
        "label": "2022 Streeterville Note [Member]",
        "terseLabel": "2022 Streeterville Note"
       }
      }
     },
     "localname": "A2022StreetervilleNoteMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_AdjustmentsToAdditionalPaidInCapitalWarrantReclassified": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Adjustments to Additional Paid in Capital, Warrant Reclassified",
        "label": "Adjustments to Additional Paid in Capital, Warrant Reclassified",
        "terseLabel": "Warrant liability - modification"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalWarrantReclassified",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_BrilliantStartEnterpriseIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Brilliant Start Enterprise Inc.",
        "label": "Brilliant Start Enterprise Inc. [Member]",
        "terseLabel": "Brilliant Start"
       }
      }
     },
     "localname": "BrilliantStartEnterpriseIncMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "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)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightWarrantsIssued",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightWarrantsIssuedPricePerShare",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "efoi_CommercialBuildingSystemsProviderMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commercial Building Systems Provider",
        "label": "Commercial Building Systems Provider [Member]",
        "terseLabel": "Commercial Building Systems Provider"
       }
      }
     },
     "localname": "CommercialBuildingSystemsProviderMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_CommonStockClosingBidPriceThreshold": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Common Stock, Closing Bid Price Threshold",
        "label": "Common Stock, Closing Bid Price Threshold",
        "terseLabel": "Closing bid price of common stock (in USD per share)"
       }
      }
     },
     "localname": "CommonStockClosingBidPriceThreshold",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "efoi_DebtInstrumentBaseRateVariable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Base Rate, Variable",
        "label": "Debt Instrument, Base Rate, Variable",
        "terseLabel": "Base rate, variable"
       }
      }
     },
     "localname": "DebtInstrumentBaseRateVariable",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "efoi_DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Percentage Increase If Delisted From Security Exchange",
        "label": "Debt Instrument, Percentage Increase If Delisted From Security Exchange",
        "terseLabel": "Percentage increase if delisted from Nasdaq"
       }
      }
     },
     "localname": "DebtInstrumentPercentageIncreaseIfDelistedFromSecurityExchange",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "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": "Maximum redemption amount"
       }
      }
     },
     "localname": "DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_December2021PrivatePlacementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "December 2021 Private Placement",
        "label": "December 2021 Private Placement [Member]",
        "terseLabel": "December 2021 Private Placement"
       }
      }
     },
     "localname": "December2021PrivatePlacementMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_DistributorToTheUSDepartmentOfDefenseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Distributor To The U.S. Department Of Defense",
        "label": "Distributor To The U.S. Department Of Defense [Member]",
        "terseLabel": "Distributor To The U.S. Department Of Defense"
       }
      }
     },
     "localname": "DistributorToTheUSDepartmentOfDefenseMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_EarningsPerShareBasicAndDilutedEPSAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Earnings Per Share, Basic and Diluted EPS",
        "label": "Earnings Per Share, Basic and Diluted EPS [Abstract]",
        "terseLabel": "Net loss per common share - basic and diluted",
        "verboseLabel": "Denominator:"
       }
      }
     },
     "localname": "EarningsPerShareBasicAndDilutedEPSAbstract",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "efoi_EstimatedProceedsFromIssuanceOfWarrants": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Estimated Proceeds From Issuance Of Warrants",
        "label": "Estimated Proceeds From Issuance Of Warrants",
        "terseLabel": "Estimated proceeds from issuance of warrants"
       }
      }
     },
     "localname": "EstimatedProceedsFromIssuanceOfWarrants",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_ExchangeAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exchange Agreement",
        "label": "Exchange Agreement [Member]",
        "terseLabel": "Exchange Agreement"
       }
      }
     },
     "localname": "ExchangeAgreementMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_FinanceLeaseAssetsAndLiabilitiesLesseeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance Lease, Assets And Liabilities, Lessee",
        "label": "Finance Lease, Assets And Liabilities, Lessee [Abstract]",
        "terseLabel": "Finance Leases"
       }
      }
     },
     "localname": "FinanceLeaseAssetsAndLiabilitiesLesseeAbstract",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_FusionParkLLCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fusion Park LLC",
        "label": "Fusion Park LLC [Member]",
        "terseLabel": "Fusion Park"
       }
      }
     },
     "localname": "FusionParkLLCMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_GainLossOnForgivenessOfDebt": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "order": 3.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gain (Loss) On Forgiveness Of Debt",
        "label": "Gain (Loss) On Forgiveness Of Debt",
        "negatedLabel": "Gain on forgiveness of Paycheck Protection Program loan",
        "negatedTerseLabel": "Gain on forgiveness of Paycheck Protection Program loan",
        "terseLabel": "Gain on forgiveness of PPP loan"
       }
      }
     },
     "localname": "GainLossOnForgivenessOfDebt",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/OtherIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_HuangNoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Huang Note [Member]",
        "label": "Huang Note [Member]",
        "terseLabel": "Huang Note"
       }
      }
     },
     "localname": "HuangNoteMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_IncreaseDecreaseInProvisionForWarranties": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 4.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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_InstitutionalInvestorMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Institutional Investor",
        "label": "Institutional Investor [Member]",
        "terseLabel": "Investor Warrants",
        "verboseLabel": "Institutional investors"
       }
      }
     },
     "localname": "InstitutionalInvestorMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_InventoryValuationReservesRawMaterials": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory Valuation Reserves, Raw Materials",
        "label": "Inventory Valuation Reserves, Raw Materials",
        "negatedPeriodEndLabel": "Reserves for excess, obsolete, and slow-moving inventories",
        "negatedPeriodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "InventoryValuationReservesRawMaterials",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_InventoryValuationReservesWriteOffs": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory Valuation Reserves, Write-Offs",
        "label": "Inventory Valuation Reserves, Write-Offs",
        "terseLabel": "Write-off for disposed inventory"
       }
      }
     },
     "localname": "InventoryValuationReservesWriteOffs",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_January2020EquityOfferingMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "January 2020 Equity Offering",
        "label": "January 2020 Equity Offering [Member]",
        "terseLabel": "January 2020 Equity Offering"
       }
      }
     },
     "localname": "January2020EquityOfferingMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_January2020EquityOfferingPrivatePlacementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "January 2020 Equity Offering, Private Placement",
        "label": "January 2020 Equity Offering, Private Placement [Member]",
        "terseLabel": "January 2020 Equity Offering, Private Placement"
       }
      }
     },
     "localname": "January2020EquityOfferingPrivatePlacementMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_January2020InstitutionalInvestorMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "January 2020 Institutional Investor",
        "label": "January 2020 Institutional Investor [Member]",
        "terseLabel": "January 2020 Institutional Investor"
       }
      }
     },
     "localname": "January2020InstitutionalInvestorMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_June2022PrivatePlacementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "June 2022 Private Placement",
        "label": "June 2022 Private Placement [Member]",
        "terseLabel": "June 2022 Private Placement"
       }
      }
     },
     "localname": "June2022PrivatePlacementMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_LineOfCreditFacilityAnnualFacilityFee": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit Facility, Annual Facility Fee",
        "label": "Line Of Credit Facility, Annual Facility Fee",
        "terseLabel": "Annual facility fee"
       }
      }
     },
     "localname": "LineOfCreditFacilityAnnualFacilityFee",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "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/20220930",
     "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_LineOfCreditFacilityTerminationNoticePeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit Facility, Termination Notice Period",
        "label": "Line Of Credit Facility, Termination Notice Period",
        "terseLabel": "Termination notice period"
       }
      }
     },
     "localname": "LineOfCreditFacilityTerminationNoticePeriod",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "efoi_MMMLEDProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "MMM LED Products",
        "label": "MMM LED Products [Member]",
        "terseLabel": "MMM LED Products"
       }
      }
     },
     "localname": "MMMLEDProductsMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_NumberOfConsecutiveDaysForBidPriceBelowThreshold": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number Of Consecutive Days For Bid Price, Below Threshold",
        "label": "Number Of Consecutive Days For Bid Price, Below Threshold",
        "terseLabel": "Number of consecutive days for which the bid price was below threshold"
       }
      }
     },
     "localname": "NumberOfConsecutiveDaysForBidPriceBelowThreshold",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "efoi_OctoberPartitionedNoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "October Partitioned Note [Member]",
        "label": "October Partitioned Note [Member]",
        "terseLabel": "October Partitioned Note"
       }
      }
     },
     "localname": "OctoberPartitionedNoteMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_OffshoreSupplierOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Offshore Supplier One",
        "label": "Offshore Supplier One [Member]",
        "terseLabel": "Offshore Supplier One"
       }
      }
     },
     "localname": "OffshoreSupplierOneMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_OperatingLeaseAssetsAndLiabilitiesLesseeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating Lease, Assets And Liabilities, Lessee",
        "label": "Operating Lease, Assets And Liabilities, Lessee [Abstract]",
        "terseLabel": "Operating Leases"
       }
      }
     },
     "localname": "OperatingLeaseAssetsAndLiabilitiesLesseeAbstract",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PartitionedNoteMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Partitioned Note",
        "label": "Partitioned Note [Member]",
        "terseLabel": "Partitioned Note"
       }
      }
     },
     "localname": "PartitionedNoteMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/OtherIncomeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payroll Tax Credit, Employee Retention Credit Under The CARES Act",
        "label": "Payroll Tax Credit, Employee Retention Credit Under The CARES Act",
        "terseLabel": "ERTC refund"
       }
      }
     },
     "localname": "PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESAct",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/OtherIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payroll Tax Credit, Employee Retention Credit Under The CARES Act, Current",
        "label": "Payroll Tax Credit, Employee Retention Credit Under The CARES Act, Current",
        "terseLabel": "ERTC expected receivable"
       }
      }
     },
     "localname": "PayrollTaxCreditEmployeeRetentionCreditUnderTheCARESActCurrent",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/OtherIncomeDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_PreFundedWarrantsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Pre-Funded Warrants",
        "label": "Pre-Funded Warrants [Member]",
        "terseLabel": "Pre-Funded Warrants"
       }
      }
     },
     "localname": "PreFundedWarrantsMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds From (Payments For) Issuance Of Common Stock And Warrants",
        "label": "Proceeds From (Payments For) Issuance Of Common Stock And Warrants",
        "terseLabel": "Proceeds from the issuance of common stock and warrants"
       }
      }
     },
     "localname": "ProceedsFromPaymentsForIssuanceOfCommonStockAndWarrants",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from Stock Options Exercised And Employee Stock Purchase Plans",
        "label": "Proceeds from Stock Options Exercised And Employee Stock Purchase Plans",
        "terseLabel": "Proceeds from exercise of stock options and employee stock purchase plan purchases"
       }
      }
     },
     "localname": "ProceedsFromStockOptionsExercisedAndEmployeeStockPurchasePlans",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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 and warrants"
       }
      }
     },
     "localname": "ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PromissoryNoteAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Promissory note",
        "label": "Promissory note [Axis]",
        "terseLabel": "Promissory note [Axis]"
       }
      }
     },
     "localname": "PromissoryNoteAxis",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "efoi_PromissoryNoteDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Promissory Note",
        "label": "Promissory Note [Domain]",
        "terseLabel": "Promissory Note [Domain]"
       }
      }
     },
     "localname": "PromissoryNoteDomain",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/20220930",
     "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": "Regional Commercial Lighting Retrofit Company"
       }
      }
     },
     "localname": "RegionalCommercialLightingRetrofitCompanyMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "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/20220930",
     "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails"
     ],
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Standard Product Warranty Accrual, Increase (Decrease) For (Payments) Recovery Of Settlements",
        "label": "Standard Product Warranty Accrual, Increase (Decrease) For (Payments) Recovery Of Settlements",
        "verboseLabel": "In kind settlements made during the period"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualIncreaseDecreaseForPaymentsRecoveryOfSettlements",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Standard Product Warranty Accrual, Increase (Decrease) For Warranties Reserve For Replacements",
        "label": "Standard Product Warranty Accrual, Increase (Decrease) For Warranties Reserve For Replacements",
        "terseLabel": "Warranty accruals for current period sales, net of changes in inventory reserves for replacements"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualIncreaseDecreaseForWarrantiesReserveForReplacements",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "efoi_StockIssuedDuringThePeriodSharesWarrantsExercised": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Issued During The Period, Shares, Warrants Exercised",
        "label": "Stock Issued During The Period, Shares, Warrants Exercised",
        "terseLabel": "Issuance of common stock upon the exercise of warrants (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringThePeriodSharesWarrantsExercised",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "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/20220930",
     "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/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_TotalExpendituresMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total Expenditures",
        "label": "Total Expenditures [Member]",
        "terseLabel": "Total Expenditures"
       }
      }
     },
     "localname": "TotalExpendituresMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_USNavyMechanicalContractorMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "U.S. Navy Mechanical Contractor",
        "label": "U.S. Navy Mechanical Contractor [Member]",
        "terseLabel": "U.S. Navy Mechanical Contractor"
       }
      }
     },
     "localname": "USNavyMechanicalContractorMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_UltravioletCLightDisinfectionRobotsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ultraviolet-C light disinfection robots [Member]",
        "label": "Ultraviolet-C Light Disinfection Robots [Member]",
        "terseLabel": "Ultraviolet-C light disinfection robots"
       }
      }
     },
     "localname": "UltravioletCLightDisinfectionRobotsMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_WallStreetJournalHighestPrimeRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Wall Street Journal, Highest Prime Rate",
        "label": "Wall Street Journal, Highest Prime Rate [Member]",
        "terseLabel": "Wall Street Journal, Highest Prime Rate"
       }
      }
     },
     "localname": "WallStreetJournalHighestPrimeRateMember",
     "nsuri": "http://www.energyfocusinc.com/20220930",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CounterpartyNameAxis": {
     "auth_ref": [
      "r48",
      "r50",
      "r96",
      "r97",
      "r229",
      "r267"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Counterparty Name [Axis]",
        "terseLabel": "Counterparty Name [Axis]"
       }
      }
     },
     "localname": "CounterpartyNameAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_DirectorMember": {
     "auth_ref": [
      "r162"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Director [Member]",
        "terseLabel": "Director"
       }
      }
     },
     "localname": "DirectorMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r161",
      "r286",
      "r290",
      "r469"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r199",
      "r200",
      "r201",
      "r202",
      "r228",
      "r266",
      "r294",
      "r296",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r466",
      "r470",
      "r493",
      "r494"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r199",
      "r200",
      "r201",
      "r202",
      "r228",
      "r266",
      "r294",
      "r296",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r466",
      "r470",
      "r493",
      "r494"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r161",
      "r286",
      "r290",
      "r469"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r158",
      "r200",
      "r201",
      "r286",
      "r288",
      "r427",
      "r465",
      "r467"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r158",
      "r200",
      "r201",
      "r286",
      "r288",
      "r427",
      "r465",
      "r467"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r182",
      "r199",
      "r200",
      "r201",
      "r202",
      "r228",
      "r266",
      "r292",
      "r294",
      "r296",
      "r328",
      "r329",
      "r330",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r466",
      "r470",
      "r493",
      "r494"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r182",
      "r199",
      "r200",
      "r201",
      "r202",
      "r228",
      "r266",
      "r292",
      "r294",
      "r296",
      "r328",
      "r329",
      "r330",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r466",
      "r470",
      "r493",
      "r494"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RepurchaseAgreementCounterpartyNameDomain": {
     "auth_ref": [
      "r49",
      "r50",
      "r96",
      "r97",
      "r229",
      "r267"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Counterparty Name [Domain]",
        "terseLabel": "Counterparty Name [Domain]"
       }
      }
     },
     "localname": "RepurchaseAgreementCounterpartyNameDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioForecastMember": {
     "auth_ref": [
      "r108",
      "r295"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forecast [Member]",
        "terseLabel": "Scenario, Forecast"
       }
      }
     },
     "localname": "ScenarioForecastMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [
      "r108",
      "r112",
      "r198",
      "r295"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]",
        "terseLabel": "Scenario [Domain]"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r159",
      "r160",
      "r286",
      "r289",
      "r468",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r159",
      "r160",
      "r286",
      "r289",
      "r468",
      "r478",
      "r484",
      "r485",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r108",
      "r112",
      "r198",
      "r295",
      "r417"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]",
        "terseLabel": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails"
     ],
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r38",
      "r414"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 9.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableMember": {
     "auth_ref": [
      "r11"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r479"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r163",
      "r164"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.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 $11 and $14, respectively"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedEmployeeBenefitsCurrent": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 7.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedProfessionalFeesCurrent": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 10.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedSalesCommissionCurrent": {
     "auth_ref": [
      "r9",
      "r42"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r24",
      "r52",
      "r53",
      "r54",
      "r457",
      "r475",
      "r476"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r51",
      "r54",
      "r57",
      "r58",
      "r59",
      "r100",
      "r101",
      "r102",
      "r363",
      "r403",
      "r471",
      "r472"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r22"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r100",
      "r101",
      "r102",
      "r336",
      "r337",
      "r338",
      "r366"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "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",
        "negatedTerseLabel": "Common stock withheld in lieu of income tax withholding on vesting of restricted stock units"
       }
      }
     },
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r298",
      "r340",
      "r341"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts": {
     "auth_ref": [
      "r272",
      "r280"
     ],
     "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",
        "negatedTerseLabel": "Offering costs on issuance of common stock and warrants"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued": {
     "auth_ref": [
      "r224",
      "r272",
      "r280"
     ],
     "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",
        "verboseLabel": "Issuance of common stock upon the exercise of warrants"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalWarrantIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 1.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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 operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r333"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r28",
      "r165",
      "r170"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfDebtDiscountPremium": {
     "auth_ref": [
      "r70",
      "r83",
      "r248",
      "r383"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense.",
        "label": "Amortization of Debt Discount (Premium)",
        "terseLabel": "Amortization of loan discounts and origination fees"
       }
      }
     },
     "localname": "AmortizationOfDebtDiscountPremium",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r122"
     ],
     "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",
        "verboseLabel": "Securities excluded from net loss per share calculation (less than for options in the three months ended June 30, 2020) (in shares)"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ArrangementsAndNonarrangementTransactionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.",
        "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]",
        "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]"
       }
      }
     },
     "localname": "ArrangementsAndNonarrangementTransactionsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r14",
      "r93",
      "r147",
      "r150",
      "r156",
      "r168",
      "r210",
      "r211",
      "r212",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r361",
      "r364",
      "r373",
      "r412",
      "r414",
      "r440",
      "r456"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r7",
      "r36",
      "r93",
      "r168",
      "r210",
      "r211",
      "r212",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r361",
      "r364",
      "r373",
      "r412",
      "r414"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r321",
      "r322",
      "r324",
      "r325",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails",
      "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r5",
      "r12",
      "r85"
     ],
     "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 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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r80",
      "r85",
      "r86"
     ],
     "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, end of period",
        "periodStartLabel": "Cash, beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r80",
      "r374"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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 in cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r18",
      "r20",
      "r21",
      "r91",
      "r93",
      "r115",
      "r116",
      "r117",
      "r119",
      "r121",
      "r125",
      "r126",
      "r127",
      "r168",
      "r210",
      "r215",
      "r216",
      "r217",
      "r221",
      "r222",
      "r264",
      "r265",
      "r268",
      "r269",
      "r272",
      "r373",
      "r501"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ClassOfWarrantOrRightAxis": {
     "auth_ref": [
      "r282",
      "r300"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of warrant or right issued.",
        "label": "Class of Warrant or Right [Axis]",
        "terseLabel": "Class of Warrant or Right [Axis]"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ClassOfWarrantOrRightDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the class or type of warrant or right outstanding. Warrants and rights represent 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.",
        "label": "Class of Warrant or Right [Domain]",
        "terseLabel": "Class of Warrant or Right [Domain]"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": {
     "auth_ref": [
      "r273"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights": {
     "auth_ref": [
      "r273"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of securities into which the class of warrant or right may be converted. For example, but not limited to, 500,000 warrants may be converted into 1,000,000 shares.",
        "label": "Class of Warrant or Right, Number of Securities Called by Warrants or Rights",
        "terseLabel": "Securities called by warrants (in shares)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r195",
      "r196",
      "r197",
      "r203",
      "r480"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r100",
      "r101",
      "r366"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r21"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r21"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r21"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r21",
      "r272"
     ],
     "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",
        "periodEndLabel": "Ending balance (in shares)",
        "periodStartLabel": "Beginning balance (in shares)",
        "terseLabel": "Common stock, outstanding (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r21",
      "r414"
     ],
     "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: Authorized: 50,000,000 shares at September 30, 2022 and December 31, 2021, Issued and outstanding: 9,191,108 at September 30, 2022 and 6,368,549 at December 31, 2021"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r137",
      "r138",
      "r161",
      "r370",
      "r371",
      "r479"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r137",
      "r138",
      "r161",
      "r370",
      "r371",
      "r477",
      "r479"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r137",
      "r138",
      "r161",
      "r370",
      "r371",
      "r477",
      "r479"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r131",
      "r454"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r137",
      "r138",
      "r161",
      "r370",
      "r371"
     ],
     "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 (less than for geographic concentration risk for the three months ended June 30, 2022)"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTable": {
     "auth_ref": [
      "r134",
      "r137",
      "r138",
      "r139",
      "r370",
      "r372",
      "r479"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r137",
      "r138",
      "r161",
      "r370",
      "r371",
      "r479"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r284",
      "r285",
      "r287"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertibleDebtMember": {
     "auth_ref": [
      "r223",
      "r225",
      "r226",
      "r228",
      "r238",
      "r239",
      "r240",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r256",
      "r257",
      "r258",
      "r259"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConvertiblePreferredStockMember": {
     "auth_ref": [
      "r264",
      "r265",
      "r268"
     ],
     "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/2022",
     "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": [
      "r19",
      "r20",
      "r270",
      "r273",
      "r276"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r68",
      "r427"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r135",
      "r161"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r90",
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r242",
      "r249",
      "r250",
      "r252",
      "r260"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/Debt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r15",
      "r16",
      "r17",
      "r92",
      "r98",
      "r225",
      "r226",
      "r227",
      "r228",
      "r229",
      "r230",
      "r232",
      "r238",
      "r239",
      "r240",
      "r241",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r256",
      "r257",
      "r258",
      "r259",
      "r386",
      "r441",
      "r442",
      "r455"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/OtherIncomeDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "auth_ref": [
      "r17",
      "r253",
      "r442",
      "r455"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentConvertibleConversionPrice1": {
     "auth_ref": [
      "r227",
      "r255"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "DebtInstrumentConvertibleConversionPrice1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r225",
      "r256",
      "r257",
      "r384",
      "r386",
      "r387"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r44",
      "r226"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/OtherIncomeDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/OtherIncomeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r45",
      "r92",
      "r98",
      "r225",
      "r226",
      "r227",
      "r228",
      "r229",
      "r230",
      "r232",
      "r238",
      "r239",
      "r240",
      "r241",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r256",
      "r257",
      "r258",
      "r259",
      "r386"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/OtherIncomeDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodAxis": {
     "auth_ref": [
      "r452"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodDomain": {
     "auth_ref": [
      "r452"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodOneMember": {
     "auth_ref": [
      "r452"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodTwoMember": {
     "auth_ref": [
      "r452"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r45",
      "r92",
      "r98",
      "r225",
      "r226",
      "r227",
      "r228",
      "r229",
      "r230",
      "r232",
      "r238",
      "r239",
      "r240",
      "r241",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r251",
      "r256",
      "r257",
      "r258",
      "r259",
      "r273",
      "r277",
      "r278",
      "r279",
      "r383",
      "r384",
      "r386",
      "r387",
      "r453"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/OtherIncomeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscount": {
     "auth_ref": [
      "r238",
      "r383",
      "r387"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet": {
     "auth_ref": [
      "r238",
      "r254",
      "r256",
      "r257",
      "r385"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFinanceCostsGross": {
     "auth_ref": [
      "r385"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r351",
      "r352"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepositsAssetsCurrent": {
     "auth_ref": [
      "r35"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r83",
      "r175"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 14.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r286"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationInventory1": {
     "auth_ref": [
      "r1",
      "r2",
      "r3",
      "r180"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as inventory attributable to disposal group held for sale or disposed of.",
        "label": "Disposal Group, Including Discontinued Operation, Inventory",
        "terseLabel": "Disposed inventory"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationInventory1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DueToRelatedPartiesCurrentAndNoncurrent": {
     "auth_ref": [
      "r95",
      "r213",
      "r215",
      "r216",
      "r220",
      "r221",
      "r222",
      "r407",
      "r444",
      "r460"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of obligations due all related parties.",
        "label": "Due to Related Parties",
        "terseLabel": "Total liability"
       }
      }
     },
     "localname": "DueToRelatedPartiesCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "verboseLabel": "Numerator:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r122",
      "r123"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r334"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r334"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Share-Based Payment Arrangement, Option [Member]",
        "terseLabel": "Stock Option"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r0",
      "r57",
      "r58",
      "r59",
      "r100",
      "r101",
      "r102",
      "r104",
      "r109",
      "r111",
      "r124",
      "r169",
      "r272",
      "r280",
      "r336",
      "r337",
      "r338",
      "r353",
      "r354",
      "r366",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r403",
      "r471",
      "r472",
      "r473"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r368",
      "r369"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseLiability": {
     "auth_ref": [
      "r389",
      "r400"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.",
        "label": "Finance Lease, Liability",
        "verboseLabel": "Finance lease liabilities"
       }
      }
     },
     "localname": "FinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "auth_ref": [
      "r389"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r400"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "auth_ref": [
      "r391",
      "r397"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAsset": {
     "auth_ref": [
      "r388"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization": {
     "auth_ref": [
      "r388"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before accumulated amortization, of right-of-use asset from finance lease.",
        "label": "Finance Lease, Right-of-Use Asset, before Accumulated Amortization",
        "terseLabel": "Finance lease right-of-use asset"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainLossOnDispositionOfAssets1": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee.",
        "label": "Gain (Loss) on Disposition of Assets",
        "negatedTerseLabel": "Loss on write-off of fixed assets"
       }
      }
     },
     "localname": "GainLossOnDispositionOfAssets1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 16.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment",
        "negatedTerseLabel": "Loss on write-off of property and equipment"
       }
      }
     },
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "auth_ref": [
      "r136",
      "r479"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r67",
      "r93",
      "r147",
      "r149",
      "r152",
      "r155",
      "r157",
      "r168",
      "r210",
      "r211",
      "r212",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r373"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "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 (loss) profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": {
     "auth_ref": [
      "r60",
      "r64",
      "r103",
      "r105",
      "r106",
      "r107",
      "r108",
      "r115",
      "r119",
      "r120",
      "r367",
      "r446",
      "r447",
      "r449",
      "r461"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.",
        "label": "Income (Loss) from Continuing Operations, Per Basic Share",
        "terseLabel": "Net loss, basic (USD per share)"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerBasicShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": {
     "auth_ref": [
      "r60",
      "r64",
      "r103",
      "r105",
      "r106",
      "r107",
      "r108",
      "r115",
      "r119",
      "r120",
      "r121",
      "r367",
      "r449",
      "r461",
      "r463",
      "r464"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.",
        "label": "Income (Loss) from Continuing Operations, Per Diluted Share",
        "terseLabel": "Net loss, diluted (USD per share)"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerDilutedShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r179",
      "r186"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [
      "r186"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r346"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r94",
      "r345",
      "r347",
      "r348",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 3.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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 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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 12.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDeferredRevenue": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 1.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDepositOtherAssets": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 6.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 7.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 2.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r61",
      "r146",
      "r382",
      "r385",
      "r450"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "order": 4.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r174"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoods": {
     "auth_ref": [
      "r29"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.",
        "label": "Inventory, Finished Goods, Gross",
        "terseLabel": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoods",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r6",
      "r34",
      "r414"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryRawMaterials": {
     "auth_ref": [
      "r30"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Raw Materials, Gross",
        "terseLabel": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterials",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryValuationReserves": {
     "auth_ref": [
      "r34",
      "r173"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of valuation reserve for inventory.",
        "label": "Inventory Valuation Reserves",
        "negatedTerseLabel": "Reserves for excess, obsolete, and slow-moving inventories"
       }
      }
     },
     "localname": "InventoryValuationReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWriteDown": {
     "auth_ref": [
      "r172"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 5.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r399",
      "r401"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r399"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r176"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeFinanceLeasesTextBlock": {
     "auth_ref": [
      "r402"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseDiscountRate": {
     "auth_ref": [
      "r393"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r400"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r400"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive": {
     "auth_ref": [
      "r400"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "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": "October 2026 to September 2027"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour": {
     "auth_ref": [
      "r400"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "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 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": "October 2025 to September 2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree": {
     "auth_ref": [
      "r400"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "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 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": "October 2024 to September 2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo": {
     "auth_ref": [
      "r400"
     ],
     "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 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": "October 2023 to September 2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths": {
     "auth_ref": [
      "r400"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "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 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 12 Months",
        "terseLabel": "October 2022\u00a0to September 2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r400"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r402"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r41",
      "r93",
      "r151",
      "r168",
      "r210",
      "r211",
      "r212",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r362",
      "r364",
      "r365",
      "r373",
      "r412",
      "r413"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r27",
      "r93",
      "r168",
      "r373",
      "r414",
      "r443",
      "r459"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r8",
      "r43",
      "r93",
      "r168",
      "r210",
      "r211",
      "r212",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r362",
      "r364",
      "r365",
      "r373",
      "r412",
      "r413",
      "r414"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "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/2022",
     "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/2022",
     "presentation": [
      "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "auth_ref": [
      "r39",
      "r92"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LinesOfCreditCurrent": {
     "auth_ref": [
      "r15",
      "r441"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermNotesPayable": {
     "auth_ref": [
      "r45"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.",
        "label": "Notes Payable, Noncurrent",
        "terseLabel": "Notes payable, net of current maturities, discounts and loan origination fees"
       }
      }
     },
     "localname": "LongTermNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r45",
      "r209"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NatureOfOperations": {
     "auth_ref": [
      "r128",
      "r143"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/NatureofOperations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r80"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r80"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r80",
      "r81",
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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 operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r4",
      "r55",
      "r56",
      "r59",
      "r63",
      "r84",
      "r93",
      "r103",
      "r105",
      "r106",
      "r107",
      "r108",
      "r110",
      "r111",
      "r118",
      "r147",
      "r149",
      "r152",
      "r155",
      "r157",
      "r168",
      "r210",
      "r211",
      "r212",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r367",
      "r373",
      "r448",
      "r462"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nonoperating Income (Expense) [Abstract]",
        "terseLabel": "Other expenses (income):"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NotesPayableCurrent": {
     "auth_ref": [
      "r40"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer.",
        "label": "Notes Payable, Current",
        "terseLabel": "Notes payable, net of discounts and loan origination fees"
       }
      }
     },
     "localname": "NotesPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NotesPayableRelatedPartiesClassifiedCurrent": {
     "auth_ref": [
      "r37",
      "r95",
      "r408"
     ],
     "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 amount for notes payable (written promise to pay), due to related parties. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Notes Payable, Related Parties, Current",
        "terseLabel": "Related party promissory note payable"
       }
      }
     },
     "localname": "NotesPayableRelatedPartiesClassifiedCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r147",
      "r149",
      "r152",
      "r155",
      "r157"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "order": 5.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r395",
      "r401"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Rolling Maturity [Abstract]",
        "terseLabel": "Operating Leases"
       }
      }
     },
     "localname": "OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r389"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r389"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 6.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r389"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r392",
      "r397"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r388"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r398",
      "r401"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLeasedAssetsLineItems": {
     "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 Leased Assets [Line Items]",
        "terseLabel": "Operating Leased Assets [Line Items]"
       }
      }
     },
     "localname": "OperatingLeasedAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r349"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "auth_ref": [
      "r350"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r42"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 11.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherIncomeAndExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Income and Expenses [Abstract]"
       }
      }
     },
     "localname": "OtherIncomeAndExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherIncomeAndOtherExpenseDisclosureTextBlock": {
     "auth_ref": [
      "r291",
      "r343"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for other income or other expense items (both operating and nonoperating). Sources of nonoperating income or nonoperating expense that may be disclosed, include amounts earned from dividends, interest on securities, profits (losses) on securities, net and miscellaneous other income or income deductions.",
        "label": "Other Income and Other Expense Disclosure [Text Block]",
        "terseLabel": "Other Income"
       }
      }
     },
     "localname": "OtherIncomeAndOtherExpenseDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/OtherIncome"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OtherNoncashIncome": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income or gain included in net income that result in no cash inflow (outflow), classified as other.",
        "label": "Other Noncash Income",
        "negatedTerseLabel": "Other income"
       }
      }
     },
     "localname": "OtherNoncashIncome",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingExpense": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Expense",
        "terseLabel": "Other expenses"
       }
      }
     },
     "localname": "OtherNonoperatingExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncome": {
     "auth_ref": [
      "r66"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Income",
        "negatedTerseLabel": "Other income"
       }
      }
     },
     "localname": "OtherNonoperatingIncome",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRestructuring": {
     "auth_ref": [
      "r79",
      "r185"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfFinancingCosts": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for loan and debt issuance costs.",
        "label": "Payments of Financing Costs",
        "negatedTerseLabel": "Deferred financing costs paid"
       }
      }
     },
     "localname": "PaymentsOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfStockIssuanceCosts": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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",
        "negatedTerseLabel": "Offering costs paid on the issuance of common stock and warrants",
        "terseLabel": "Offering costs paid on the issuance of common stock and warrants"
       }
      }
     },
     "localname": "PaymentsOfStockIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [
      "r76"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 6.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r73"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r20",
      "r264"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r20"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r20",
      "r264"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r20"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r20",
      "r414"
     ],
     "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: Authorized: 5,000,000 shares (3,300,000 designated as Series A Convertible Preferred Stock) at September 30, 2022 and December 31, 2021, Issued and outstanding: 876,447 at September 30, 2022 and December 31, 2021"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r36"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfDebt": {
     "auth_ref": [
      "r75"
     ],
     "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",
        "verboseLabel": "Proceeds from issuance of debt"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromLoanOriginations1": {
     "auth_ref": [
      "r72"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/OtherIncomeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromNotesPayable": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a borrowing supported by a written promise to pay an obligation.",
        "label": "Proceeds from Notes Payable",
        "terseLabel": "Proceeds from the related party promissory note payable"
       }
      }
     },
     "localname": "ProceedsFromNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromRepaymentsOfLinesOfCredit": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 10.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 payments on the credit line borrowings - Credit Facilities"
       }
      }
     },
     "localname": "ProceedsFromRepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromWarrantExercises": {
     "auth_ref": [
      "r74"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrual": {
     "auth_ref": [
      "r206",
      "r207",
      "r445"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r177",
      "r390",
      "r394"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation and amortization from plant, property, and equipment and right-of-use asset from finance lease.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization",
        "negatedLabel": "Less: accumulated depreciation"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r178",
      "r394"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.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 and amortization, of property, plant, and equipment and finance lease right-of-use asset.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization",
        "terseLabel": "Property and equipment, net",
        "totalLabel": "Property and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization": {
     "auth_ref": [
      "r14",
      "r176",
      "r388"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.",
        "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization",
        "totalLabel": "Property and equipment at cost"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r178"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r181",
      "r481",
      "r482",
      "r483"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r13",
      "r176"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization",
       "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, gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r178"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r176"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails",
      "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r65",
      "r171"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 10.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RealEstateMember": {
     "auth_ref": [
      "r288"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Property consisting of land, land improvement and buildings.",
        "label": "Real Estate [Member]",
        "terseLabel": "Real Estate"
       }
      }
     },
     "localname": "RealEstateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyDomain": {
     "auth_ref": [
      "r293",
      "r406",
      "r407"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.",
        "label": "Related Party [Domain]",
        "terseLabel": "Related Party [Domain]"
       }
      }
     },
     "localname": "RelatedPartyDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionAmountsOfTransaction": {
     "auth_ref": [
      "r406",
      "r409"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of transactions with related party during the financial reporting period.",
        "label": "Related Party Transaction, Amounts of Transaction",
        "terseLabel": "Amounts of transaction"
       }
      }
     },
     "localname": "RelatedPartyTransactionAmountsOfTransaction",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RelatedPartyTransactionAxis": {
     "auth_ref": [
      "r293",
      "r406",
      "r407",
      "r409"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of related party transaction.",
        "label": "Related Party Transaction [Axis]",
        "terseLabel": "Related Party Transaction [Axis]"
       }
      }
     },
     "localname": "RelatedPartyTransactionAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionDomain": {
     "auth_ref": [
      "r293"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Transaction between related party.",
        "label": "Related Party Transaction [Domain]",
        "terseLabel": "Related Party Transaction [Domain]"
       }
      }
     },
     "localname": "RelatedPartyTransactionDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionLineItems": {
     "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": "Related Party Transaction [Line Items]",
        "terseLabel": "Related Party Transaction [Line Items]"
       }
      }
     },
     "localname": "RelatedPartyTransactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identify the stated interest rate per the agreement, for example, leasing and debt arrangements between related parties.",
        "label": "Related Party Transaction, Rate",
        "terseLabel": "Interest rate"
       }
      }
     },
     "localname": "RelatedPartyTransactionRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transactions [Abstract]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "auth_ref": [
      "r293",
      "r406",
      "r409",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.",
        "label": "Related Party [Axis]",
        "terseLabel": "Related Party [Axis]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPromissoryNotePayableDetails",
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "auth_ref": [
      "r404",
      "r405",
      "r407",
      "r410",
      "r411"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.",
        "label": "Related Party Transactions Disclosure [Text Block]",
        "terseLabel": "Related Party Transaction"
       }
      }
     },
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RelatedPartyTransaction"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RepaymentsOfNotesPayable": {
     "auth_ref": [
      "r77"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 8.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 2021 Streeterville note"
       }
      }
     },
     "localname": "RepaymentsOfNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r344",
      "r426",
      "r495"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/2022",
     "presentation": [
      "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock": {
     "auth_ref": [
      "r183",
      "r185",
      "r188",
      "r193",
      "r194"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/Restructuring"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestructuringCostAndReserveAxis": {
     "auth_ref": [
      "r184",
      "r185",
      "r190",
      "r191"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringCosts": {
     "auth_ref": [
      "r83"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "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 expense (recovery)"
       }
      }
     },
     "localname": "RestructuringCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestructuringReserve": {
     "auth_ref": [
      "r185",
      "r189"
     ],
     "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": "Balance at September 30, 2021",
        "periodStartLabel": "Balance at December 31, 2020"
       }
      }
     },
     "localname": "RestructuringReserve",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r23",
      "r280",
      "r414",
      "r458",
      "r474",
      "r476"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r0",
      "r100",
      "r101",
      "r102",
      "r104",
      "r109",
      "r111",
      "r169",
      "r336",
      "r337",
      "r338",
      "r353",
      "r354",
      "r366",
      "r471",
      "r473"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r88",
      "r89"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r62",
      "r93",
      "r144",
      "r145",
      "r148",
      "r153",
      "r154",
      "r158",
      "r159",
      "r161",
      "r168",
      "r210",
      "r211",
      "r212",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r373",
      "r451"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "SaleOfStockPricePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r137",
      "r161"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesGeographicinformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r121"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "auth_ref": [
      "r332",
      "r339"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "auth_ref": [
      "r332"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable": {
     "auth_ref": [
      "r158"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r10",
      "r31",
      "r32",
      "r33"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfOperatingLeasedAssetsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of long-lived, depreciable assets that are subject to a operating lease agreements and are used in the normal conduct of business to produce goods and services. Examples may 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": "Schedule of Operating Leased Assets [Table]",
        "terseLabel": "Schedule of Operating Leased Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfOperatingLeasedAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "auth_ref": [
      "r208"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r178"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": {
     "auth_ref": [
      "r408",
      "r409"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of quantitative and qualitative information pertaining to related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.",
        "label": "Schedule of Related Party Transactions, by Related Party [Table]",
        "terseLabel": "Schedule of Related Party Transactions, by Related Party [Table]"
       }
      }
     },
     "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RelatedPartyTransactionDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": {
     "auth_ref": [
      "r184",
      "r185",
      "r186",
      "r187",
      "r190",
      "r191",
      "r192"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock": {
     "auth_ref": [
      "r185",
      "r191"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r297",
      "r299",
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r321",
      "r322",
      "r324",
      "r325",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r304",
      "r320",
      "r323"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r326"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfStockByClassTable": {
     "auth_ref": [
      "r18",
      "r20",
      "r21",
      "r91",
      "r125",
      "r126",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r277",
      "r278",
      "r279",
      "r280"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock": {
     "auth_ref": [
      "r282",
      "r300"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r69"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations": {
       "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 13.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r317"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r317"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r314",
      "r315"
     ],
     "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 (USD per share)",
        "periodStartLabel": "Outstanding at beginning of period (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r318"
     ],
     "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",
        "negatedTerseLabel": "Vested (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r318"
     ],
     "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": "Vested (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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 (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r329"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "auth_ref": [
      "r328"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r330"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised": {
     "auth_ref": [
      "r313"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber": {
     "auth_ref": [
      "r305",
      "r306"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r307"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r307"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r311"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [
      "r309"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r321"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Fair value of options issued (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r305",
      "r306"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r305",
      "r306"
     ],
     "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 (USD per share)",
        "periodStartLabel": "Outstanding at beginning of period (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "auth_ref": [
      "r324"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r324"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r301",
      "r302",
      "r303",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r321",
      "r322",
      "r324",
      "r325",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r310"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Exercised (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r311"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r309"
     ],
     "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 (USD per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r327"
     ],
     "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 of options (in years)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r335"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r324"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r324"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r283",
      "r342"
     ],
     "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": "Stockholders' Equity"
       }
      }
     },
     "localname": "ShareholdersEquityAndShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "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": "Ending balance (in shares)",
        "periodStartLabel": "Beginning balance (in shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r87",
      "r99"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 8.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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease": {
     "auth_ref": [
      "r204"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyPolicy": {
     "auth_ref": [
      "r205"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r18",
      "r20",
      "r21",
      "r91",
      "r93",
      "r115",
      "r116",
      "r117",
      "r119",
      "r121",
      "r125",
      "r126",
      "r127",
      "r168",
      "r210",
      "r215",
      "r216",
      "r217",
      "r221",
      "r222",
      "r264",
      "r265",
      "r268",
      "r269",
      "r272",
      "r373",
      "r501"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r0",
      "r47",
      "r57",
      "r58",
      "r59",
      "r100",
      "r101",
      "r102",
      "r104",
      "r109",
      "r111",
      "r124",
      "r169",
      "r272",
      "r280",
      "r336",
      "r337",
      "r338",
      "r353",
      "r354",
      "r366",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r403",
      "r471",
      "r472",
      "r473"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2022",
     "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r100",
      "r101",
      "r102",
      "r124",
      "r427"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r46",
      "r243",
      "r272",
      "r273",
      "r280"
     ],
     "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": "Issuance of common stock upon conversion from preferred stock (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": {
     "auth_ref": [
      "r20",
      "r21",
      "r272",
      "r280"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesNewIssues": {
     "auth_ref": [
      "r20",
      "r21",
      "r272",
      "r280"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of new stock issued during the period.",
        "label": "Stock Issued During Period, Shares, New Issues",
        "terseLabel": "Issuance of common stock (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r20",
      "r21",
      "r272",
      "r280",
      "r310"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period",
        "negatedTerseLabel": "Exercised (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r47",
      "r272",
      "r280"
     ],
     "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",
        "terseLabel": "Conversion of convertible securities"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": {
     "auth_ref": [
      "r20",
      "r21",
      "r272",
      "r280"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "auth_ref": [
      "r20",
      "r21",
      "r272",
      "r280"
     ],
     "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"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "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": "Options"
       }
      }
     },
     "localname": "StockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r21",
      "r25",
      "r26",
      "r93",
      "r166",
      "r168",
      "r373",
      "r414"
     ],
     "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": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "terseLabel": "Stockholders' equity",
        "totalLabel": "Total stockholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquity",
      "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteStockSplitConversionRatio1": {
     "auth_ref": [
      "r281"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails"
     ],
     "xbrltype": "pureItemType"
    },
    "us-gaap_SubleaseIncome": {
     "auth_ref": [
      "r396",
      "r401"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r381",
      "r416"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTable": {
     "auth_ref": [
      "r381",
      "r416"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r381",
      "r416"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r381",
      "r416"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNotesDetails",
      "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/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r415",
      "r418"
     ],
     "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/2022",
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2020EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2021EquityOfferingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityOutstandingWarrantsfromtheJanuary2020EquityOfferingDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SupplierConcentrationRiskMember": {
     "auth_ref": [
      "r135"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy": {
     "auth_ref": [
      "r167"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TypeOfArrangementAxis": {
     "auth_ref": [
      "r360"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.",
        "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]",
        "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]"
       }
      }
     },
     "localname": "TypeOfArrangementAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TypeOfRestructuringDomain": {
     "auth_ref": [
      "r184",
      "r185",
      "r190",
      "r191"
     ],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnamortizedDebtIssuanceExpense": {
     "auth_ref": [],
     "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/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r129",
      "r130",
      "r132",
      "r133",
      "r140",
      "r141",
      "r142"
     ],
     "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/2022",
     "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/2022",
     "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/2022",
     "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/2022",
     "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": "Warrants"
       }
      }
     },
     "localname": "WarrantMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityJune2022andDecember2021PrivatePlacementDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r114",
      "r121"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "terseLabel": "Diluted weighted average common shares outstanding (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r113",
      "r121"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Basic weighted average common shares outstanding (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Basic [Abstract]",
        "terseLabel": "Weighted average shares of common stock outstanding:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasicAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperations"
     ],
     "xbrltype": "stringItemType"
    }
   },
   "unitCount": 6
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=d3e1107-107759"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(19)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1278-109256"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e2626-109256"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "https://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "https://asc.fasb.org/topic&trid=2134479"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "310",
   "URI": "https://asc.fasb.org/topic&trid=2196771"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=116847112&loc=d3e4542-108314"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.BB)",
   "Topic": "330",
   "URI": "https://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "360",
   "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "https://asc.fasb.org/topic&trid=2155823"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "410",
   "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.P.4(b)(2))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(b)(1))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(b)(2))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(e))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "420",
   "URI": "https://asc.fasb.org/topic&trid=2175745"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "https://asc.fasb.org/topic&trid=2144648"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222160&loc=SL51721533-107759"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org/topic&trid=2127136"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(4))",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(5)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123465755&loc=SL6230698-112601"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466302&loc=d3e4852-112606"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466302&loc=d3e4724-112606"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031898-161870"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "https://asc.fasb.org/topic&trid=2208564"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(CFRR 211.02)",
   "Topic": "480",
   "URI": "https://asc.fasb.org/extlink&oid=122040564&loc=d3e177068-122764"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=65888546&loc=d3e21300-112643"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21553-112644"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496180-112644"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21475-112644"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21484-112644"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21488-112644"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21506-112644"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21506-112644"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21521-112644"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21538-112644"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 4.C)",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187143-122770"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "50",
   "Topic": "505",
   "URI": "https://asc.fasb.org/extlink&oid=6784392&loc=d3e188667-122775"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "https://asc.fasb.org/topic&trid=2208762"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "610",
   "URI": "https://asc.fasb.org/topic&trid=49130413"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(3)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=SL116886442-113899"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4549-113899"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5047-113901"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(v)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "720",
   "URI": "https://asc.fasb.org/topic&trid=2122503"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "https://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org/topic&trid=2144680"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "808",
   "URI": "https://asc.fasb.org/extlink&oid=6931272&loc=SL5834143-161434"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13279-108611"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a)(5))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "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": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918701-209980"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/subtopic&trid=77888251"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39691-107864"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "850",
   "URI": "https://asc.fasb.org/topic&trid=2122745"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "https://asc.fasb.org/topic&trid=2122774"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "https://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61929-109447"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61929-109447"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62059-109447"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62059-109447"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62395-109447"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62395-109447"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62479-109447"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e62479-109447"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=SL6807758-109447"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=SL6807758-109447"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(1)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61872-109447"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(2)",
   "Topic": "932",
   "URI": "https://asc.fasb.org/extlink&oid=126939881&loc=d3e61872-109447"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(3),(4))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(20))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Subparagraph": "e",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126941378&loc=d3e61044-112788"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-30)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.17)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(11))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "https://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226024-175313"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99779-112916"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=d3e99893-112916"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "https://asc.fasb.org/extlink&oid=126982197&loc=SL120174063-112916"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226049-175313"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "https://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r496": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r497": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r498": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r499": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313"
  },
  "r500": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r501": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1402"
  },
  "r502": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(13))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868656-224227"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(7)(d))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&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": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.8)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3367-108585"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18726-107790"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=126899994&loc=d3e18823-107790"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(c))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(f))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Topic": "235",
   "URI": "https://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(m)(1)(iii))",
   "Topic": "235",
   "URI": "https://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)(2)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org/topic&trid=2122369"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>85
<FILENAME>0000924168-22-000088-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000924168-22-000088-xbrl.zip
M4$L#!!0    ( $Y":E58O^6.RA0  ,M@   ;    83(P,C(P.3,P97AH:6)I
M=#$P,3$P+7$N:'1M[5U;<]NVMGX_OP+;:;/C&4F6?(^=9L:QW8D[:9)IO$].
MG_: )"0A)@D6("6KO_ZL"\"+)*=).XWDF?9!L2@26 M8EV]=P+[XU]6[R]M?
MWU^+:9FEXOU_7KVYN10[_;V]CP>7>WM7MU?B]>W/;\3A8#@2MU;F3I?:Y#+=
MV[M^NR-VIF59G.WMS>?SP?Q@8.QD[_:7/1SJ<"\UQJE!4B8[+U_@%?A4,GGY
M/R_^U>^+*Q-7F<I+$5LE2Y6(RNE\(CXFRMV)?M_?=6F*A=63:2GVA_O[XJ.Q
M=WHF^?=2EZEZ&<9YL<??7^S1)"\BDRQ>ODCT3.CDAQU]/#K8/Y%')R?)Z?!P
M='@2#9^/GA\EQ\F1/(CV3T[_.P(B]^!V?L:5BU3]L)/IO#]5./_9P7%1GL]U
M4D[/1L/A]SN=^_I.Q7UU7UH9EV>NRC)I%^<E7.C+5$_R,V(!'AD;8-@_$YO4
MV+,G0_KO''_ICV6FT\79OV]UIIQXJ^;B%Y/)_-\]!\L.<U@]YAN=_ET!&4 1
M?9TSB2<P3JIS%4@>[2.=U__W^N;5S:T8#0>C%WMX?V!TA=UU;/SM5!^NI?KI
MD]'Q\/R?SZ_][.XP?>AL(F1:_K"CQO]-S<3<EW*""YZ:^*XJ[N-L<2<'GXK)
MCG V_I*[6!+\=CT?%O?G("@34)7(E*7)SHY@AV?*ECJ6J5< T@7^.2C1$3RX
MTR'T"^7L$H:,K'Y(OO;_2+Y&^R!?'U11JBQ25ASWR+:L63B^$-F7#_SVK6A]
MHURJ%N)G699B='"\_US\)&%C4G%E]4QMF+A+DU99I*7X4$IT##WQ[K4X/!SN
MGV[QBEXI:04OZ],G1Z?KM&9;2+TIA79BKLNIF*"G%.#KIN KI<M$.87O<R5
MN52>B-*(A:G@*CPP-C:3J3#C,8BX&0N5%:E9D,.%G^ >)0K#KAQ_OIQJ-1;7
M]RJN2I I\6X\UC$\2?->Y\I.%N)'\+2N)V[R>"">X0!/GYSN[P_/+TU6R'Q!
MWT;GNSWAJNB3BDND!V\KE<V<D$!@;/*$IG3"5"7RFH@(+,Q\ *,RW8&H'K%B
M56%L*1)M8;QT$49\9:1-D.PK^L%8-Q"W^#2S"W_ 3"7 "62W*H!%6136S&!!
MH@6-T*)Y='+NUHQ(!+LJCI5SXRJ%$6$%55BOO$+; >1KL"(.?"O=/AH-ODJ2
M:IC1,9_H(;_<Z_Y5(2-O^ZZR?NU0.%JRHO,XK0"2K=>2A^D_+V22P ;T4S7V
MV(E<@,X3&/:L/SK]&AXOK);I7^.PV9F_9UW78:_N(A#'8"1!GJ\ \)+VC$;G
M?R]9ZQ=#_&I@PQW2@I@[07+F&AQ*I(1TPAG4&-)%IZ-4]414D9V9FD*QT4'E
MK)^ 6U S:3R1&Y'">&AB9"X:-SO:9S\[$.*C L5V!9H(U!H).E:4/*XSF4+]
M6B"!ZEX[)A",$D#+3"Z"J8O4 FP)W\;S(A,]&@\(E6 JB:8Y! R@ND"WE6C8
MP(:024/Z-3 I7&8,?"_KP*:'G%OU6P6&(.F1/DC@L\"U4F!G'K,2[&^'$KR2
M3@DG4X@NMD@+9)Y7,.SO8-0];4' O]L_'O: AL%PV!,I^ .0AH4U\&.BDBIF
MAT:2#)>"Z)"<34V*O(/7A"=(3T#H= YSIBG:5R<B6 MP//E:KU1@( 9^V*%,
MHO1'-( "2PVZ,[8&(  $7>06X=\!:A9,A,-)$6E@7]V!Q,,<&DB83W4\)3]6
ME3 D//3=*/ E0$'H4?A7F^1QB_G!=HCY>V4)A>4Q(I:\<IL4]E];!EM!2*:]
MT08@#,*2>^D'I.5B2R@'%2"6;BHB(IVLIA2@+!.%V1J+/@,,]='P>_PG:E2Z
M)R8&HC_$=A5( &--6X'>X(WXY<=?*9G3H$U>G?<IT 'FUH,N^*N *PX?R1NQ
M]TB/J=)!@0CD163)U^C16.>P"R!7*-[UGCP[&7Z_2WI+;@3$5<]T4BW?=0!W
M#<1[R8#(LU!/OPPT:2B^6 %=+2A%*]BB3LB2X3%I<'O,0NJ$/9G?,+J [BJ.
MC4V(K'HT0+8I!-JXG3P +IK'NPBO%Y]!S.NN"Q\=()4J=Q33X9=,ER7XU-A4
M*;A%-&,E(@68MI$9\)W)I\J!6\],A=8M6+W$S/,YS61AF>@OD#VKQBD:,MAP
MM$O@@!-RTV1.825*LGGKIP+3JS(<)%+,; %VHP03"#N%F0==,.6Z+=U^@:R9
M6)GA2OLM: WK]_</XX/P2P^'R4TI)I4$# %+Q%OGK75F$CW6BAC'66K!D(A]
M%KSY[3U:#2 >D>$]W [#>PT>N%R("Y2SVNB*35C="Q Q$ 6 PVA\8%^J6)$Q
MX%#=>NQ+&MT)TGML31!\MO XPP'2J#' #S-'W$+CC+5UB($72[$^![&=<+P.
MA;]4U%VO _<G).9P1\&:"L,6E8VGZ %&1P0HA)M*R_:^G3M [)$!*ZXT\5W
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
M6^;XY(%W6/])R7H\A?0]?LT__0\'7OX_4$L#!!0    ( $Y":E4:=@$/1 \
M %MF   ;    83(P,C(P.3,P97AH:6)I=#$P,S$P+7$N:'1M[5U;4]M(%G[?
M7]%#=C)097QW(,!01< ,GB(V99O)YFFK+;7L3F1)T]W"\?[Z/>=T2[Y@0C(D
ML4DY#X MJ77Z7+]SD7+RRT7GO/_^ILE&9ARRF]LWUZUSMK-?*KVKG9=*%_T+
M=M5_>\WJQ7*%]16/M#0RCGA8*C7;.VQG9$QR5"I-)I/BI%:,U;#4[Y9PJ7HI
MC&,MBK[Q=TY/\!OX*;A_^J^37_;WV47LI6,1&>8IP8WP6:IE-&3O?*$_LOU]
M=]9YG$R5'(X,JY:K5?8N5A_E';?'C32A.,W6.2G9SR<ENLG)(/:GIR>^O&/2
M_WU'!H?^H%$1(F@$]?JA)PZ#5_Y!4'E]* :^/S@8_+<"1);@='N--M-0_+XS
MEM'^2.#]CVJO$G,\D;X9'57*Y5]W%L[;U\+;%Y^,XIXYTNEXS-7TV, 7^SR4
MP^B(M@"7!#%LV%WCQ6&LCEZ4Z=\Q'MD/^%B&TZ/?^G(L-&N+">O&8Q[]5M#
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
M%H'MC@0#P@M+0!18QFRJP-[!G$<S4K2=DU7Z''> F@'VL.$T >./?0677LC
MS-APDF0:E^\<EHSCVBTS!Y#-)&-AT PLHB&E$R H?B4(Z";26_A>3\#Y6)P8
M$C839![@?GP48A0Q,B3IWG*3@>PS=@Y3@=EZGLK0P P *D"H^-XQYD%C6;U4
MX (PD1@4N4Z#$7]EL)R 8R^K]5_1T:(T0T, \T&=CKB6&E>:PT=P339QJZWE
M)S/;#\ CV6[KQ<'>O@^V-!-<T>+ 99A/I6X4F"32,Q@&S@+O]DQ&< I1+M48
M_0/ 5;J0![#F=(V/*P97F D(T$O@P^;BZS5D5Q(B!.MJ#>:)]K<)(%!E3V6+
MZV+")/YI?]@]N^JPQO-G!R^/&;LY??^VTQL.V&GOG%T/+SO]_"LV[/3?#JI/
MG66[\6.FN7J5&M6&RW?69RM6';[P',<\(DZ.9^V\OBG 'AVSZ\!XG79=91!>
M!(.EDT"-D\QH Z)AK)H'IA$/>>R5D6,YX& TR:/#<O IH4Q?0)2A$M%IE$"@
MF4=7&Y)6A".'>*58!'(/LM$'(##$&U4Q*H1@+0P+$D5AD V0X\ (C6H3XE<\
MLY"X2MI'[@^XNE*(;?62YD-I_TVA2$V6D<<)QVI(S])2FDF"JE'X/N7*$"<
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
M*FF?>#X ZTHAMM5+6H^E_K>%(C591AXH'*LA/4M+:28)JD;AYY0K0Z0 U&M
M4K0=. ,+\_^CLO9C*CM#WP!61E8&+H+Z MW=8:3.C1)T%&1A:#WH:]S,6FM.
MN^!S%KL%6"9X\UNFTIHQST"1()9'Q,"S8KIA4 J7&:(#-E\?ZT+89!3*,4U'
M8UXA"+^*46%)0.Q,ZHGP:]L=#%LN& [[I[W!!83 ?F<P['?/AMV;WK9&P-:&
M1\"ARTA9'ZQ72<)FO0$!T*9D"WF1!F>IN$QZGDA7(-$3_IB SY<Z333Y*]Z4
M*,(_PL)RI(2L+X'4I$"(D$_QZ@1]=RHU7!'#5X38>7*8/P?"&2;J@)P*DXKY
MH  I^#@/T@**P( I=#NFFD;$<%>LR9N#16=_ME5OA,.VG<-V_B#N>G/!SCL7
MIW=7PV=/Z_7K6G-MOHIVEWA>II1PN(\KZA8L@%5/IA@AQ#V&8TNS /-3QWD6
M5M69+2ZYD2:CL&%OHP11!#P+C:T/+R9_<-%&YGZ=7/)S*_F&)'[#!PH'G)!!
MR6L7:CVX7ACW*9\_V&,CW X56MN$?;Z\9J45+.M@2\-1NPA'B]H+N RIYAOQ
MC\*AIN,>P6(Q7LUY#N"@$G]E$@LE!2G96J6TG%)N,Z4S'I,_)RHW&;2(2/ 8
MK0/-(4W!;R@3P<BA!')--)P$U*.3$"S%F^'M<$:*P+K\R%"1EV^FA[_C\4>5
MI0;DON+33?#O2@E/=_D>H&D4H4=JQME]$D*JRI6+MZ#K5"6>$,C@*VQWM)>'
M6YTC,WQ6,^O,<#E"0S!?(3[FL'*0%A@;QN%O^0DPIO=P3#"$!!PB=Q0.K"33
M1L#52G@"<$;EA 6/A1+<Q><&F080&PG*X\IN<$D.U&;7WR/_PYT!=QN-C')2
MG5+$(I#T)-PC\\#S)!I5!8?;%7N,^Q&>6( \^Y6/9(CIGMO3P8-HCQI]& ;&
M1!)T2VGVUCIPVSGP*2Q29@D?UGF%00W^">FN]BVW9=1@H>=F@,11>%CWM?$8
MS:WL#J DR*71!*5>936+AOJH^8!).G/1?\]0"GMXD"XJ)+5&"F<1WIZ=(2UR
M,:BCO L#5"@!!<$%]R;6GR@$+FD'YHXT'$AV)#66OATX BH*,*[=P\8>1=+'
M36BQS0>(.NTZ'EGTO!>/-OXXBVO,;^$C %D@5<_N%?I.33;+S4*/5"Y6=0C9
MOQ,U;^08B^I("?ZQ2ML%1SR<@FYWGM4Z]4B7U(IVBZU,0O9=$M+O7'?.NYT!
MZ_;8\+)CDY)OD9.L%]OV"\9VE^\U+;/3!^2TLDB!(8^E;5'$_22UG1;@TR&V
M7U 4&X^5&.-6%*<"<)GS66QPI&^Q3K:<O4B(SKZ$8<+9@X+MB#H+[B7=F"?$
M2-9A!N7,"=;R\'A#2R5V"L)?;_,,!2/:XO9%A$K."X$8>GS;RX%*I1(([0>0
MT]M^ R5PD83.0X SD>6UM(5-BH8EKOOU+F1AYT^(=I"8;917M5;D03:+1)*$
M_P/\ZB2FN7N)=AH4GU(18X<,. @ZH4_5)(7;$2,!MP=+JI54^8G=I@?5#.9G
MB]@M/@GE23VO.2B[?I;JK5K I27#^I,79I;_YN6G$*B#<;U5"Y/AL$8J%C/M
M'L\"(9X(VQN.CCGSZUILM/G ZIS]@9V3+TFLZ,7 ES-$)U3RA&O7B@$P->7
M3IYN&BD5^MU8!&PC;!:8I\R6*A;?J6&C*#H2 PL"+";-B_QIF&G6^O5G6\<*
M*79'F<FKKK:VAFN&6OR$/56Y'T;\DXQ 5.6:+0KUS]NS8$'+.+>WW679 \>(
MKKN#L\[5U6FO<W.WK?LG!QN^?S( TU,NPU[SMHE#0.L+!&U4R4/6HFGSL+R1
MJ; ISJ 3Q. #A%:8N (&^!A_LEC$D&IZ(F=P_'.IM66=$*&X)/ J/<Z&5GNR
MV'ZE\6U8M<B71R[;PI=+#G,[79Q)>>2)"/W'!:=>@7Q+G++9,6:S!-6?DR8O
M'7TR.;H\^:RM];#61GO8>PS RM*?TTC$/G5#V$3A%I!<J/NBK-%W]&C-GMA+
M+&U09:[@:(E]VXKJ2"#M[ $K*?I>K!GB?D46AQC2,-H5-,2^65!^0@TF(8GT
MTY85EV$&;AZ[K5!?A'QF(R313<MWG$ 5EB936_&![.]>AF(L'HA&;F/W3FDK
ME.?SA*F1SSX^%"Y?G#!\J.U308_$>M8R]_W,.*7Y6H%2)9#[VIT+F_/ +0&
M%7Y<'/\S8[O*V@,V/D^C5MV&6U%)B6LXQ'B"852HG@CZ@#Q<1F0,UBI*R0-7
M=I$0$DN8ES<U2^U- %N6S:"RJB&H8D$\7S TOSB#++]4$UP29VYWSNHJ*\W.
M.B/6../"\BD .3G'<"1>M7(CL:@7)&XI43B\#C=692 ]W%0QU(B#E4_7-TVT
MG8:UST;KPHHG/']>5R"XIQS9%4[R/"]_MB_0 UWL6[1E6O6B[6:I8$KIGCVR
M:M$P:N V6FY_?)[ZX3HZ\>:R<<WRRH*=NEODI1U.3 I @R0CWB%P*P*AL.(&
MJN PAA(-<C7[F "-9)( !!3GX0:@*V.L'U58 !\13#)IL.TA+MKV7%>>M7T[
MFI-H53J*TJ&=Y1.A=WNR*+/%73L:(9'!58:L!H\NXJ$N !&'LZN<MV_,R([F
MF=*$W],K0:YO P'M+Y#_^<T4ZP[ [8T.P)>"8UUAW4%U2-E]:OO@'#73Q+Y#
M=@JAQ O=2S6NP]0:)=J8,SR^LA<(7!(OL.43L-P(;@+*B%@#J3P C,P+K4K@
MFSOT!4DEO;]3M"=Q2QFQ7%-L%;O<'WS55F&VUC[W-]H^!\5+5&NWT <4;B1=
MM3Q="D%45P=C67@#C"KFR^^,;:W-'&RTS?R> '"0EZZYWZ%D-CDO&9-T<Y8%
M@:ZH9PV,*V2A !\2];%@%KB+HXC- ' %0*J,=MV-Q1NUX5.%W@<[I"5[:KY^
M5=N?&]07O-;_I4.MM?V%WDU_^>*P>3R@]P,Q7\+=5]<0!GGF8?MXXU3VPX;Z
MN6=/3=S;L&?_P_&K>0!"=WOL?7?8ZPP&[/UEI]^YN2AW;N%>BL<S;!BAQJ,,
MF5,&@*7@(9A N$S&Y@F 79!\>QGMS>2HZ"(GO2T92(4)S@@ ,M](?@AHS_U1
MDF_Y8R:MYH_X08HO_1V7;S[5TB^-_)BYKK:_=S/:['CL9: UA780[2GV\?+%
M_NMC37_9E="AF+'3&KZ79;Y"X1OP\R>T CT>";OAM,U3(<<9XN];V;F<3;#%
MKT-@A,AT0S]$HM:.-3_/_3SW\]SVG5O%$9H'[>_[MM/?2X-N,0T"1G9+/PJD
M$S4C/O9T1O0S8:"&],<3AKK]V43Z <>W_P-02P,$%     @ 3D)J5?^&PYQ3
M!P  '28  !L   !A,C R,C Y,S!E>&AI8FET,S$Q,3 M<2YH=&WM6FUSVS82
M_GZ_ K7G$F>&>J%>4D=V/>/8[E0S:=)Z=).[3S<@L10Q!@D5 *6HO[Z[ &5)
MEI1*]U(K:?V!%L$%L ">??8!R,MO;C_<C/[UTQW+7:'83_]X^VYXPTX:K=;'
M[DVK=3NZ93^,?GS'>LUVS$:&EU8ZJ4NN6JV[]R?L)'=N,FBU9K-9<]9M:C-N
MC>Y;U%2OI;2VT!1.G%Q=4@E>@8NKOUU^TVBP6YU6!92.I0:X \$J*\LQ^RC
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
MM)=5>&*UJMQFE9WDLW8-'T[Y3[BN?@-02P,$%     @ 3D)J5?(3_9%L!0
MRQ@  !L   !A,C R,C Y,S!E>&AI8FET,S(Q,3 M<2YH=&WM66USVC@0_GZ_
M8DOFVF0&_ :$\-+,4*!39M+0!G?:?KH1M@R:VI8KB1#ZZV\E8TH@:2^A:=K.
MY8,#WM7NZME=[:[H/.F/>O['-P.8J22&-^]>G U[4*K8]OMJS[;[?A]>^:_/
MH&8Y+OB"I)(IQE,2V_;@O 2EF5)9R[87BX6UJ%I<3&W_PM:B:G;,N:16J,+2
M:4>_P2<EX>E?G2>5"O1Y,$]HJB 0E"@:PERR= KO0RH_0:6RXNKQ;"G8=*;
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
M55>N;#_I1__DI'?Y% \\S8T<GUA<#>IX[-8CQN<6W7;1C;E#GPY*Z/93K^S
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
M!BG<A4B7"I.4DQQ8,%:PE"=T(A< _!PB<TF.^XV,:D;0^>,!-Z<W%:& \OH
MVO&6E%>$X"_H7N#!W(RAOZYJ81?=DVFDP1\64E2G3B8P)2Y0;S" \%[X//Y$
M@K,"@U1D<E;;10I,YQ37F82* IA&6^<](U(8YHT+TGB>]Y%G,BFU0#N:S3&N
MT]^]#(RG/B'!RMM?: TVH4:R1*4.$BD762)<\XR-8G"1QX>AG6NL]K^]-GTA
M,=7(&W6DUFO%A JHJD1Z))"0%!Z"\?1UO0 S;>814_IP3"<WR28707(!(M"
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
MD$&ENG$,/]HFY(!5<_6W+NZ6]7?1^GL^I;]?WG^FRG/$F0-1%0F@3$(@/9*
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
MMN,<QF>L*#*6U&"G(8"")*=>I7@X]0!9*R&)>D&,>=Y\J+R(&K^(&#?2$(>
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
M<\ 'J)4F7GB;<@;6D:JKZT,&@)4"@-H3#C( +!8 9AB $<XRSR!PSFI 16(
M%F$ 7=#1-V!4490 0#Z^$^Q3 4"=20@$-BD)X>:@1GGL(/1[G4E@H]=]6$#C
M5S5UEQ'*FM$0YA+4=KJVU_%)8AG6ZH.U[;G(AH*6&XVC)T,4!C1H"G1T2 &F
MP3+KN:,")\>&POG**_65GU_6S907BP UQ#,R CP3 LP0&P^%\59#H&7@J1:]
M XIB!"2W02&)&.*VK&&"%MF (B/ DB' X@X_9 18, +,QC:"\ Y%^P](6>I$
M6@HDC)0@"==KR1V#,+DV6-2P%9L18%408'&I%AD!%HT ,QS .B,99!K8R.0
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
MP!$CU"NE)3<,2<BT)HRKJN_ '387<H_.QR'8[G!WI@ZW1<I AP0( @I .3)
M(H< =,**$,EEH/))FG0V:7=P@8K<M*V&^LK3KF9MVMJ0*S>N6A2DS35+\9S[
MP P0C,.4(:1 I-<0,.V(X!PB$<B3=:YJ$JQEKG(7KH*X1=$IQ\1P1ZDA4D 2
M@F0!.8^T9'?5^-R6\\D 8(;3*!0%1(P%3KC4EU,X8&PD-L$(JIEB$N.0ZE+3
MQ?=*:I+Z9U:364W-&)=9S<) ;:Z9B+*!&LA H-X &MTV(*&C@-N(9LY:PRE\
MV:RFX=O!&7XS_([AUU!CI0U!$\,HM$$S!)W5"G-()2.UP6\FEH\,ELT>/I%*
M2"\" HP3 :A7 BC-4\=W)P1!BI 4+2O[<"KQDD X@]MJ@]M]=C91X-9S)!AT
MBF(NM1)*:(.B>@@-D;P=W7+[S<4AV=',QJ55D>MS :*D$* 04Z E%0!#";DG
MUF-%%]M_,\-7AJ\FPA=%! F-I#%>4(J\T<0ZS .2/GC*>"WPE5E:G=@VDURE
MK5#:(P9H@!A0;2Q0#FH@N6><0T>DH8FEH77&<4:XC' K@'#WZ2L,"5081X)&
M PTH&">\\<I@XU!PU&;OLR&X-IML%BV2]D%"P-.6!B4I5T-("Y!EQ!#!(M"I
MR-G6*9E'M2;ZGB_L5.?M;<>Z<9);OG/6[IU[/WZQ=U;JL>ZZ\0MGH[X]U0/?
M.FO',3SW@<^IE4&B"%QO9-I^63>('W5*XHXSL42)UUFV6;9+(=M[-D43@1)&
M&1084>:DX<)2RA%UDG%Y62R*3C+N.8%W($#3?=&FFZ)MC^&\O.BO,7;_E: [
M$Z%[$:'W<_D=E&GL*27 TL !I5 !C94$@FH2/-1:B>C?T;K:HV40:#0(O"2
M;_@6]XM=@_?QOA%')GK@S!%"@R#&2NZ\$CCYX!Z%NJQ062SI5B.4;= ];=#<
M5K"0CELK N!6"$"=%T!J:(#UG&+/I2<T&J%L@UZ$_K\D&Y1EFV6[*K*]A]W&
MP1*F(?'Q%VHDU=0'9S"U7AL7I,UVNYEV>S:(+@(+!B($=+33@&IA@50" 2%]
M%*5%S&BX-'8[MP?*5^8K<WN@9]R\2AM4WW6_K[O#AVU*O>A*S;F>=I92EM)2
M[P;YT"OFR?SAJ9_>#?HT1LCM'[YOBX%W.56F/I9_-+]#Q+FB G(@ V2 (H1!
MJGD.J G0!,\5XWIM ZT35-<)X*SESZWE-[CL=6_XWJ6WP5C3*RS(BGQ/19X]
M]4J8( 1["KCG%%#I$8C_$V E]@I:+!5+J;PKK,1-]H$RV"QP7^\!8),I17U(
M-+?AIY0-#I%4LE5%*%*:@E0Y#2@1#-5"RN!AF7VKU K#T4JJ>?;OLI2RE)9_
M2RV;S.<UF7,'5A",;E8PP$$K0'3 #3#",V ]](%JYJR6R60R"!MD,O.F6KXR
M7[D<FVK+?2)L/P2?@L7Q60?#02M:R^*V;;;'[[.]Z,X,N0].EE*64I92EM+2
M2JG)O&7E5]-]"N@\2R1\:@-^DJKT)I&J[,3?RXD_F8][1Z^=$Q,\T(RF<OK.
M V4" <)R9R1#CD@4G7@RWR\\-RIKJCJOG''(4LI26@+3^"P1[VP:ZS*-L_'M
M:! ]-5P"@A2*IE$(( 5E(#"EO$(,<VX;9!IS8#M?F:]L8F"[>0/.5^8K5^/*
MK'KYRGQE5KU\9;[RY5R952]?F:]LHNJM6F6 ,KP(C![X]+B=,]\=Z!3CRL4
M<H)[EE*64I92EM*+D5*3><G*KZ;&YRBE4B E47HSQ9,^^/^.BD$Q] >^_ZVP
MX[(A'[SMG73+NY05 ?-F[7TV:[_<4+"7NT XM1[(LFJ\A!1(XCUP@6)$-+-4
MFK4--K]7NSKHM)):OW(V)$LI2ZGY%O1Y4IFR!7U""SJ;[D0"CX2)*B 4(X!J
M+( R(D2#:B!%Q IKFV9!<Q@\7YFO;&(8O'D#SE?F*U?CRJQZ^<I\95:]?&6^
M\N5<F54O7YFO;*+JK5K=ICT_;+5[@T&J'M@:GOKX?]_[5B=^\'30\EWG7>L_
MHZYO$;C>2M'/7+ IGWW.4LI2RE+*4GHQ4FHR8<FK:=E64Y92EM(R5'CA2A$,
M>> 04>&"LD0'[WD0GL6WX!W2(@;Q>>-OL_D1T>G8Z=I>Q[^+GD<N7%Y;IL/%
MYK L[G*ML(OREBCI 67( 8J# TI #YQCQE$:A<JB*<'K5/)FE';)>MR\2DU9
MCY]<CV<SEJ#0SFL% >)8 "H(!L9J"J#4#@:+A-/-TN.:S@XV(W@F;M3"?^EV
M6>%<#VN(D=68K3G5JCU);]!K%VZ^4_MR(-W]6J$:+(*V43NT8A0*IKF25AOH
MI!6:&OAYYVX9G%6KT_W1<##4W31C&<#N!6#;P]V9/J8!1S8990%"<#3R$"J
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
MRQNG&:J4JI360"_>Y&Y3U8LWK1??//A:+RI,3(; (62A@O"4@*?205X7(LE
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
ME AHI1%V9T]<<@*@MM;H*IPW3CE4*54IK8%J;#VX5E7C;:K&^;":=M25I!)
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
M<((/AK&RU ^RU)L'"PZ]C]1HE;)1H5AF*5:Z? 7&@(3DN(^H0@P[>W6;8.U
MW3&GOH+Y)L \W[G#DV2C,B!\]""(+]$YCF"9$"(SM [1[^S951R&BN/N*N?;
MW,JO>+X!/"\&  2-7$0@@I83[5: 84%!$)1+X;2CCI46G#6[;MU0W;%-_(KF
MFT#SO':6TLJD+"A:-O!#TZ9>6W"1ZJRXM0^*EKVSVI_S;H_=G[H/]<S]'6_=
M7PCCV;DL*O<LQ3W["VZ^I2$)&PAX4^I=$Y7 2&\A,,PVAHSH$RT;@/6<_;KA
M]I;]_*5/^U4$_R""Y[?PC<5HM8)H&8)PG$$67H)L."#EE*L8=/$%:C/=#07O
M71RWK^#],?#.._(8?(K:6B@[^MGT)PZL9@:R)V>8U:A9M#M[EYR2J]C=".S>
MQ3'[BMT?Q.Y\T6<GHZ'$0S*<@* T*U[N"W8=.IJ\D*6LI.D(=K=M"S^O]O$9
M?KF%_T7YR"W;Q[_E]/ME&*G(Z/?/@JFDM!0I/5GPY[E3*29/P*'.WD J]:M-
MJ76KF$BE9W#RQ1L@=:MOC?#;K1W[BMK543MG2FCT47#N@*JH02B/X&P4H(SA
M5J<H,<:=/;ER?^^*W YKWEOVXRN&5\/PO"L?2))41@DV9B +IQ@8$3APY[E!
MBN@"EH2YJGDW%+^W[,M7_*Z(W_D.DED44DH'Q+@ PEH#/M( G!">+),RH=G9
MX_40_=T@\2(%I3?&MS@\J[OP=WN _EP8S\]E4;EG*>YYNN"U,R6(H+8T@4P>
M!"<6?"G<&:R4-F1W+5FYL]>E$T%U*V"=]^ K?E?$[WP&'\VF/@D$)&,EOUYJ
M,#XE0.X496@LP7*,?I4$OHK=#F/W-EWWBMW5L#OOMT<G@I$\@54\V_T./;AH
MLBH.W%(I,&.8[NRQE?SV"MX.@_=VC]-7\*X$WCG%RP5/)GLU(&+33-UDQ9L,
M!Z]2M,0E%R7+AG-'JDZUN0<O>/=]]J/1U UZ+KXYFTQ+A].5]MW]:!QQ#-/1
MZ?TR!Y/1H!][Y1G6D9_NTIU_\%D>1Z/GF+\L] =X@--,5Z,3+(UJCT8/W>3X
MV7CTMA\Q_OKAY03CD^'A15/.!_FFW\ZBCK6R9UOL]L="6$ &SH64/MLB(;,;
M30A&.0I&,DTD9AU%5*G6J_6B<?)C.X/7 ]D:[3EL%&MT(YQ0^:.S_#%_-" J
MY0+30(@4(/(: ,.=@VS+(O.H':4E&6B7ZA8V-2IU=)DZ[K(F8"6,KA+&?"Q$
M4,>H-Q)T=H++:4 #SD0#R -CG">DEC0&!S/5X-@"UNA&&*7R1V?Y8Z'.$!I'
MT&1?I903]MJ##1C!,Z<,3\D:CCM[?)>JSAL<;>97R.X$:O2E.,]8ZH4,H-Y9
MQDVO/^R-+I#3<Y^@LTK&Q=:RXLT=I\@RNS;G55I;@M9>+J9G>,:R 90@,<U
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
MNJ8]6DV7N+7(R.-S&?Q>1/!)4!=:H(9&VM $BX<R5(I.:Y(U0?DA!)J2Y*6
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
M5\)!3Z:3Y:Z68$3.4!,5$WT")N%I&DZ: $JCM=!<++UZ2_MST*H8ZEB-PN#
M^/,XG0Y<J%\V5VGPP\<^&IH@,HH*;'L-/^UM]P9]Y_N#/LRS#=I@G^"3TF0]
MSZ:S<6IF/1M&L$E/URP ;(UZXOK#*?ROF?G\S?5WVH6@?0M/-$T[FZ6'@>N?
M3!:A(YACA)<7/7QQ-D.'L]D"M9O^.TO# !M3*^M)W>^TG6T9L#1+GBR^7G>/
M[P^/P?(>3F$'9\.0QCCG>I!CT.GP4+-#QW \HS&6<_;JY;P'VQVF@.<S[L.[
M$RSYO%<;XSC\&.V)E4'FR\9XU1C[J39-Z^N) H6DMAT?. ]H5Z2/?;!YRN9,
M)K.3.BS6*TU"ZYTI'T58O@OG;=?GU==LU7Y! ;=H3RL[\ 5@_6/<B7K;3MP'
M'.L]T,)):;O6#)\^]2<EMC8?=T$A9\>IK #[5^-.+]8[7=GLAI3*^0_.<;@-
ME%D?W5;[\/R%M<6%F]V'-5W3=/5;]2=<$:?_:3?E9V],R'9W KC/UMD4!:FT
M,&#W!0?Z+T1BLXZ5K+@!A_J!.3@W;TP(G CS@T$F"Q)%Y__CLM!LO80F. WL
M^N5-"!]9RT'SB%H.=FW\'M=<1==RL&LY^+!:#OZ O<RZ5FX_\_*[T[^Y$'AD
MC?PN TX<.'1AW;3G$]B*F"U$;[*V86][/_+&'>A^-#SV6Z__D5[2W]!!PK"
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
M4T]?0V%T_^#%8=!68#"2!!$RV/R6$^.R)BH!<6G&(^68.]I0BE]'<-MF[UM
M)+/) R"%UYC%2?%@].+3:1I.TJ1@2![U)],T3G&G/P8NV,\YX<WY[6%\/AHV
MS0 :'IC344<WE] -0U]1T6P%]XQ4>'E#L)2(=300T /:27#**PQ8\\N:^[1D
M@TT64G-06\7F.FN\QR)\!F#^#+:P=\-H-BQ8B/C("&32N)=3>CC2Y_D@.:2H
MEREU N=2PH&Y'2I+*Z5U("R ]P;V>21.6 P]T4I6V3,6@'#$9;?U6\)YVCL8
M3=T "*!F93CGR?3[T<.\P*$AB2:^A)%([#K\'"?7T<5E=+%_$ X%.&E5CIS$
M4(% $<80QU4D/B?KA:^RXQ8$"K\,)6XN48[=Q]3S*0TQIC3!I&'LN4G/]4#\
MSVJ* "K!(H0F$(62AH <"NX4DPF]BX,,TQ1'0*,)9=5_9_WI.4HMM(M >404
M71%_*E4.J'IZ;:OI-\<I3?'=\+Y+$I]/>WOPR.EX%%**!?45E&@>CTZN,]!
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
MM46K*\$ZU@K+0,9?4[&X=9?%9U5V67GP.&52(JK*FQ"<R*Q*CE:<QP;.6W5
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
MG6ZX7C?L/5_3#;1B47L%R@#HFHCH,O'4&Z*%\4HY:IDT3YZ58E'VZ]U:ZW?
M.YTYWTVXFW WX7N<\/S&QVH!YX,MVMFN,T"E\GMCD51;3U5W&,3*"ZR8F"Q=
MF75^A!>FSDK.R)4"$ZRV;PJ]%O4U;7-"?,!C8>,8R\EZ.*?Z0@8^C@\%+#N9
M@**>]#Z.!K"'I;0<E,/1\6@V;?"JX'6E9]@\HXK#%BR>R00F.#A'D)[)K"YH
M6VI%YN8%SEM+%UG*YZ72;>IRKDMSZGL$B&4_G([&;95[71I7<E]N@&4RY=K*
M:#0]A>V:;O4\S'!Y[O4LI^/Z_D&-F+1<EE06,![!4!F,EBDL]?\=G<&;QDU7
MCWIUN+@^0E/W!B.\6+#HF>9*]<_4#;$F!FOR9B>SNLPIIMP/_6E]\6;Y(52@
M4SPVF"JNI,W:8=.']GVE@5L[2_ ^QL/Y9^4 TZ<^S'W9)5DMDWT,!6O+-$7+
M/EU!7*F^4]\4/];7.X!3X"]'_0!TWO )(FGT)BF5)AHN'/?A,!$Z(_>G[56Q
MT@=X4+/*\@E'I+#1:<_%C^CQX9T4F&V;@YW_TE),N=D/>W743RU_PM^!D(&O
M3DZ!T/,,2XW/\.U(_C#=V;C86#C*B^'+49C-XV!W>@#JJ;S!"6PHQ$(KCO"G
M&]*V6$&' \"Q[=[+G&](-%N%94[AU(>EIJT43TUK2NJ= NN.BT!KSPB.>8K.
MR*)YQO*!>U@2DD<9LEQA2J4F]'6*S]WIXSL:D %:_/H]CZ>70.4>I6' *U3A
MP^QTP3:3\PE(*JPI1AV!+-/<  8>*5?#L.GD8'#A@([3X+07Q_TB"TY.$&,&
M!&@MW[&4>39I:AV.L<@3+TB=)1BBO@B98@O,6+_G$=3P+@FFC:*KY\][1\UU
M2R3:LA-;>"$:E@#3Z;6<4/1#*[E0!BUM7RVJX@R$)_YZ0<BU?%,?5BW6X)W-
MF93*4KSHD9''2F'*IQ1FB+U7UQF?8-$K"<=N.$SM.34R^KRN-P7^.L(K?Q_2
M>:^E8UC!9!:.\2B/L,9UB)'E+3A\-Y@>!S<&ZR8-P,EL?@19ZFK0_GK&ERQL
MJ^G)=5*W1(55E!D64JCW;PJR(R"L*TAK8*1)LZ+3!C.N7096L _3>'+</\6V
M2Y.:QK!*&@TFI/=&*TS0WFR).J-T?P0DM[UL2P*_E/)[.Z^B+]V<CD>X_9/F
M&FK39F->--]VK08;"PN)O_R:"XO21Q9"Q7@60D@O3>6%X=H)[BJ?FHHYU5;,
M=6U:OT/%W>[G%WSOZ% K%D.BCLC2,%UX0;R6G%@GDLN:5\E)1-UCEZ/F@K\S
M7.X&/#MM"O3[S2FL]T\ _FR;!+,%=-HUS=99[X^F]\P?;2N/K5O19> B!FJ]
MB*825G,#@V8?.7>&5D[6+5\HL%.=/%NK8NCH\IO0Y>[9WO8AMS9I;,4 ,@2[
M!R=*7&4B;(^K0B5SEK'"S@P;\$._CB[GE5;%E[F.-B\^O8$^BY/3-;S^L2GV
M3[J_?0?]KK^ 8J\1F6L=V)_V-MH)>FXG["0_;0P"#-HLI4IKEWX;;-1!+8V1
MM.>_UC=H1WY:8_9>6$:Y.N7'_7B46EB,NH7JES-&MHIE2T%X.RNP),TEQI2T
MUA@1/6V+\NUE^/MR/?]5HCU_@(UXOM0X=;L&<]G/MVZF^K-QP=+-6K'[/O!#
M*X02/()EP;$"@NI(? 3+(E@&1^4E'%]$//[+^>%VVEU[K[CTS'*EA,K12E\E
M[Q0#(O',50U)B)8DQ'4DL;D9 S)(1P&;Y> [L7=V& ./ 5%UN><@!ZE+6(:8
MB,MP\#PJX%;SY!F]J@\#2I;;'+W7(&ZY,;K*26CC3&)P&#2*)*,1JKU7+UHU
MV1W]W1^]!*--:.XEEY9P<!^(T"F#"I0&+#<J&=>58\;BT5_%\N,TP=1%R3V
MMD*'%-30BIZIG?LZ$;"$7!7<J0L%K6=84'[FUVLNQ9EZ!([]P7HNJ81+,.<Q
MFS;0THN$4GUA?[HA)K\4_"DHJ[5"7XJ#7.MLW<#BG6//7FJ"U/$C6$\:'L&#
M-<+_N+T3U9L<IS2MH\,73^M\<;S]81@GU\!\K!H6DUN:+>V$\VP8)PUQ89O2
M$B K\<=5;(<7)Z>#T7E*O=<)P]<HG [<I][S>KK_:"RI%Z\/GC>6U*^8R*@M
M+4KGIM9^N3W^JB!!M#$8#(;6*%N3?V[5-\(1Z0DLMO[1L$G.X:TSC)AB+@7V
MM.&5>0BOSHVU&96TG DK@:XZ/U:@JA"H<10P'0:G#Z<4/@S.F\Q+&C;WW&%"
M/F%<+Z3)!#,A"T"Y<OV_B0Z&\U#@_<H[FN#=>4TQ& V&<QEBHJ?AR E"-_33
M>'(A==,$Z.9]'F8MG!PP.$B%41W.F_8;X(Q%2A%XS-58^7!4L(YQO5-C=W**
MO9V:.#-:H<MIG*T6N;()0,*4X23&DQ:#&/'4%FO;NG#//\^31 WL6%X&V;CX
MEF50-@QEIFG3J_1T5,AG'@D'*05,7$C]",ZTWLMV6G7^<(C'6KX\Q"#E:%9F
MF\;CV>DBOUQD0\LCDS9X7O;\'*.A\(>CP<CCW?\%^2^@'/ >X^BD'YKL5[UQ
M!;QA_W]?[1!J>T7XXA.%E3%FO[1&>$?$7>H#)\<&]1G[_TZF#=Q)FSB>@YC,
M=[X-3,Y#V>,T+6%SW,WW"5-O8(T#YR+1PB0"HJV!4!P6.BJ9\"%JY\$\[>Q.
MD$1KZ%&0(]A,?5WD?Z> [9Q>\!CJ [EX2"5;.<+VR?U08W-@_KO GXS;W&2;
M05@P0]-4I\["UR'[K95T:LTOH#@1OA$A(=U1?1EU ?6(A HJM,5:0>J +1PD
M%PL#%JJJO;TZ:#Y_^NRX#U^OI7F+8-$D9.?ZH=_&\^=79=UP:06+*@-,HCSM
M[?0G<_J>T^[2SH"S>38:?ZBWI82P+^[-TJP+!2[R] E14_H-S&7#.619J$[1
M[4/@F$7RM\80G"&"1W\<"0JM\XL"K2"U-$JK.-QM:4BQ7=:28TMXATVMQ20-
MZNH-L'#3&"5*;K+-D_^?O7=O:NM8UH>_BHKW[+>2*H8]]TMRBBIBL#>I2,2V
M'!_XQS57(RP06Q=C^/2_GEF2$!+88&0C8*4J&'19:]9,]]-/]_1TP[7].'7@
MI!3YL $0KR1/3.ODP,UF/C8V"];W>^-"BGDJLCP.KJ#E9*-JG%OACJI)F*E3
M6F5E9*/1!06O#.+ZU6+M-Y=H'Z<0HIR&_!N3D]QD,!4P_;\AHA^,8!7;*Q]P
MN_7W*W-#>-X<7MN\U*[+F$D%Q7T[M32 H$"CT>Q+G=)ZMN@:$*;<U0$^]=&>
M="XF)3*+@080#B-0EM]OSC"IE^S[EVRLKU/;F2W\A/U<B>!E&UC,4ZQH<B&
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
M%)D;RQ8N74RLLS)'MQ0.A*<DK#:>4$.5\HQSR\:1K6^6N:[%Y-;]^+[LO?Y
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
ML1_C,?PU%FG0E7XL,.&'\$40ZHD03+0S@5Z! L]+^%6\RP\S_F*1FRLMFL8
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
MN^#3[HN][29IOOX@-;."&:"Q7OG<7S<@ZV5$$A;,$)>"R\G'ZJ8:WE/;D;$
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
M+)&=P419!C,J5)G#*IC0&=/;*S<%T>['$MCKS<0=\D>OD?MO"S6G*R?4.U_
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
M1=)J"=Z[X\A8S9 D3 4IO*>I^/'W[AY?4\['"9QR 3A533D?.W!V/M>,\T[
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
M<Z FHI(KC ?@E/V.R\@> 476"P;^T@$8L3-8[W*)LQ"'&7I.X+,ECV<(W*<
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
M"S\8?(-%M06XR^3\-=LZV[.JR$*C(#3BD&GP1<#9C9E0P9@'#4"Z.Y1S=S.
MQ$2-JM-#<H<IZ4$J\-D6JBO$</FVU!N*V/+%MR;JWCB:0N!7&?3MW+K!%TCA
M%CHDE*H,$5<AQN $!8GS0X5VQ"1I9+$<?A8XQ5%<5IJ[6 Q7WR"_KE,'^4M%
MVW.*DY0.P7^!9?3CYT[EK_2ZPY,1F?VV'R;_OVLW]TPJ!V>:PV?L[CRTUW)I
M/G/.<7D-+G[]*+":.9HIL_DU'N XFZ?LM[P_:T8J^F +X2*!W\*S)EX[2J+U
M(7FD4*_&(RUD3Q]S3HW*+]4(B%KRD,1M)=1H>9 7>YP@+S.>HWYMD-<"E-9*
M0Z]L9B5'J8W(2NH0O -?Q*3 &.?!>EXWOX&],"WTZBXM1?R^]7:/"Q>9*)0H
MCF=NE(DXY1/QRGDO5,PA5TP"YMK0*W8=Z-6B-]TC].J&(M9"K^Y*UO8IR)I5
MK%#O#<F.<R)%9,2*P(@P%HMO,5*J0=;<50WVUX1>+=6 FZ,2-'DK@Y ZVJ"I
MX\Q+7V0P.;K*>:D$A%S/&+5@JZ5%1&*!-BA'H_3$0; &@:B,Q.$T*YV$*(I*
M(:):G'!9!+9:9&76.E4=#S9O-/CTA]F2%F.UE(!\IEO[>Q!8*"-2(=191V1.
M&D?K4I)#=+04&;D75V"LL W[)T14+3Q2KX&H,B/2VKM!5-U,/5I$U4U4XOL&
MQY%_QM.H=%4N5,U\$Y\DB8$6SU@0B8<50E0ME-,[053Q[(0-THKLHI0)A,TY
M$Y4$KP-<#TVO.,1;1-5RPO?ZV\[;/7B&,G.(&F(2$>'T%59"(*:O6#C#O8G^
MFHBJNEYX8TR5U=$D7Y)0P8"A##[KK(KF6:4 SMQ5+ER[^TON/M_&TY@KR\%=
M$T8+S#-)8N$X)DJ!W6>V%(JFARU"RMP84C4M)K<!5=VYO6A!50M%!=:VL1=X
MB(E!M)<,8ER2XL13]-XDC2E8RFQE*&X%JMKN?YD$5;&' %7=-AQH055W+W"P
MAHT]$:)D%M,+-H!;E(,DWN=$/-.6YAAU1H9E3J\'JEKHM3P<J.J6^8D65/4
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
MTT4R["SB :$EDA42$B]$P6/F<+9DSLKL2#.7C6?4)ZIYD3X'Y\ "NFB*,%S
MIY]UP/3[8PP2P?%X]AP"^YVMS<[NQO]LOAOI9+/#SZ<E?F&T=N77727BQSYA
M=I,,ZHAE7?VPN&@#FY/@7#OMG8Q!OK6U "L!\E@9(YQTE$:F(R-@K'EK#01'
M\W6),5F0ZJX3VY4K6'4"5I'2\7&O&_VH'[#Z$_@*%6K@L'M2OS#,)V@I3PX:
M__==XRD+RT<?JGPWC-+^PA3T*9K(5/F5(%1ZK1I2?EBO<-+Q??W7BW.7MWM2
MV5ZD5#L"3W8XQ$.Z0BBC,:Z;\AN_&]V-]^OOUCLEPWI\;V2>3_S797+UJR01
M-ZM2G"$Z"I]-.05/Z(OO-0H#?E'_K/*BSH^R?? SAG5Q(#4MF/C 8&]@?Y?J
M]UNAYX:NVZ+;GCK%TRE"84!X&Q\7\5.=03.<"E[ 1S*"R%0"!X[L]QIBN>!)
MK:&O"@\%;J8B^:N3VRCK(Q>Z0M%,ZW-$Z (!N3WS@]0,9%NT[NX0_-]A'</!
MPX'(9S2(J.K4!%>XRF74[KG_BCC*D?"#4_P)C,4P=6OMK&CUD;2B0I7!)[Z
MZI[/6EAP9W55)]1" ^_&JS]2N0!]NE)GKMJF6^:/F.'*0'@&1Q5X*!&\,9&3
MLR+PHFR2UX? U/L$WLI&M4L[HR5CT%!!8D9B]2@0,0_NX6!A:T_Z2+.6D0C8
M%"*]",13H8@V2N64I+<6RUI<78:"JL;5S9TXF%0Z[F.T^\LR\D$%%]$5G@UU
M$EP9:R,NI21I/$_4M/+Q8/+Q0>U1R3/XNXI8FA7XOTX2I,TCQI9<=*)4T?CL
MN3'K_'+Q&&((6)E>B"46B\FOZYW_[I^!FS18&YU,=>T9O;ZZ=E_/ENM@8BR>
M0'"R]@/M4%-4O[:0O4'X2_]HXXOO]O  V4!?<^/<S=PIX/4U'B0XD'^.W<Q6
M/!>+YVZ4>Y*"?2I6$YDEA&?)8$\7BR0&GCT(;LIHO@R[;%)<XZFW9]BC%()]
M>3=G& X0'JEFY?N64H5WIVAG9EW*2^/$\P 109L0&=Y!=+C>61 :@]1T7IR>
MU+WQ?_3#L"J@5,TCS$S%D_C.J3+*E9YX9S\?X<M->AH^_RW[ 3CAX_;:^AF,
MQQ;4?B1\;T26KB,PQLT3M/2_%CCE5?\ O!.<:OSB;ITKK[S++MQPZ8+R54#9
M97/0,09E%7@0+G))90@JE^ABL$Q%'ZRXKFJVFKALOFP+2Y(Y2B,5V.* !"32
M<$,<JP899*VK)&S1SYZ[=7UWF'JME3<R<E<,A1VG5I=DF9'9").<KZ=8T';'
M[V/'=S;V,@]22"D(3SX0R5P!#S$$DC3%(=M4&1EPC,Z"<L/8]AZ-PX=YPY1G
M;%&%O&S2=G0:C[HV#M2'=<?\J)Q]!,'SI%D^QW$VEG&]\[I4&;;3DR[F.%*-
MQ;C0)AX/NOUJM/>\_5N2/<P'KVT""::)R5*4MRXR[K@Q$9ZJ%]?O KJV*S&F
M$]C\>MRM2S&MA"^6\ ]GVV_W4N(93A (>@0K1,;D(!J2@8@L8S!,:J[\L^=B
MT:2HL8@W@KF/ARFV:AYC;;>69C$5/X^#9A3QJL,3/G4Z^:E%X=3H4^N=5_!J
MD_;$EI+3X7#"-1FER; +%(*H.B$VQ)P:AE>U[(]]F2M]A+7.\<)!]VP\Z+ZN
M)Z&2Y>'::+@]> "]4TP_UEKX^B0?=NSX(S7[71?N::)J6/6^GH*K5?V.^>^7
M_L2/KPB+Q?57EF&CSM+_E8\AWKK+@J%\? 5#-[[_'Y%J[#S,ER^^_WLNE+X[
M\(-\T.^!  \WJ\[7C:-4_?$WS%*_:<B+5J5XNCU&(GQ0'P]??]_^_D%M__/Q
M</O37Y\^?-]0.[__=;CU<O_LPS\?OGW8W?^&J9\Y),*GWN&'3UL"OI-]//S
MMW_?_K3U\K/\" 9WYR48XD]_'.P@6N%3#PSGYMG.[OL]'G*BR7L23'88F0EB
MF39$V.2+*])X%6:KIY(*IDN(GA<$GV9'<X)?G G,:^_,;/7TW>[.B__SWSM_
MOMS\ZUU3#^ALOGW_>O?##6JI5W_Y]&*5\9*G$#*'TSH;%JCRG$:N@PH@9'Y%
MD;)_G!XU0P#>#+I?\"AYT_.Q,JZK#YY]?=09K[^J6B!582]7-2LXXRZYMYI%
M>E2-PJI?]^2T0=%VC[[ D=@?G#=:#L'GN10!.$1]'\Y-\E0A\1CA7"]22@71
M*$5*,1 4X6D8#6;4(^.BIQV["6*>L:V!=>R4BA1AQ+Q369IA39'P^FCWG*;T
M>G[<#Z;B^0'F*-(]%HP(2C&2,\>6;\>(A^=/-(TNQ12EJZCIU@03:^#2S;MR
M]7:/G(VI/K*:K7(YPNDW>5!MXXS\8(^7R%SI8*5T)GEP-7TI)45./;)I+(P'
MYA"D$T+S!I=S_FU/508^O19[A1>1J([$F&()A%>1>&H"<4QXIB.+U&#?Y+I8
MD"Y&N&@E NN=?\#U[@W[]<"$)L2L:(XN,BF_='^=LDN9O*JI5?\!A]JCAPM7
M&<O/<@9'N)B+LD7'S"7R\XNL+)Q9WE.N';] 8!;8F1<]C_C*9DD[@XH%;&QQ
MQ@0K+WROE]-OWT9+;]YXS23)DQ.[[UM\+^"PWB(%$0K'#8-S0(*,BD0%X7Y)
MV4MI*]-C[)J5\\2\$Z9GSNP<G=-EW<KNW*\8;39KK&S1^,6Q[+ G+!_[?$\8
MDVR6FA2DK@(_TA*P_))(Q;1VL E!&"0B ;]J019M;)BJ,/F7+MB:LT5FI::R
M!('Q^_N#O']5?\-"8V,C1,5P.GF0$1FU]U8SEQQ$R4$FGDUK;'ZD,&V_?/]U
MS]I@HC2%&*[!STDTD."X)Q#8A.23I[(@S>4:*#7X.@L.N@<P-C<3HSDGIS4U
M2TG'[L;7/:\5MF,(PCGRWZALB,M,DTP17,.<2T5>PP."& PV]*BI:%9AU16Q
M5Q6I5:-9*NS=."3S^_AOE+3NL*:Z7#*!?LN :Z;I9)2Y>=4?C)>^@4M\<;["
M1]%]\O#B]6GS;"\:!QKM.8DR%H0+"6)],41GD"S#16(":>74?'@UUY'8.UV.
M3NU^Y."O&@U;U4JJUBT0C+_R/O)D#)#*9@ JL%-*1C#ZQE%ZT:_QZ<AN4RG
M6(A:H;E :-2>9L5)$3BA4AHDC<_$(8@'S+_Q"F)?RNBSY^*J+E8LIXP:[&HX
M_UD3IU5FIP<N3V\-NSVQCZ\FO6U8<BL"OY6Q.R]ZV:,XO<J/A,WR!TC-OMS3
MCE%M3"0\5G3>)A$O':9W&%6T!,XC2(V<)W*;EIKUSFY%!MEOE+AA6_M1PC!N
MBF_DH<GA3+%CM4*Q4"B^;_(]"6$3+4F0%"F8$FDM\4(G$DIV0>+\&^' E(AY
M(-B,+6DJK_D(A] ,<\W"4$.P)L:$(:R_2?:@C2%@@488U>F+'.63DV:*(5JI
MJF)T1=/D;TV[[[N#G$\:#J$+!VIOPUN.&QZ%JJ5C6)-%7)D0Q_;AFV-H;ROV
MTV#:22*(W8-\/B7O116'5(H 9^S(HX=[WBDW4(P?C6)X:,78V7TK]XSF*6;F
MB>)@(Z4,D@2C!!RT,H.#)FCV"A3C$AAWE?9,2'=VV#UJ:BWST>"LP"W,=(;<
M0>:'HUI-*IPC,F*MU0I3]0ZE:K M7JW-AOX\HKBUNX&3..XJ'UH!2'K?FA;R
MPT:T)@G[,ISJ%3BL%LJ:(82O536^,=(&,QV^%T][-=(%<2\5VF4BWGTD55$P
MW_7](?_#M;2Q.@#&M/<5S/CB<V9MXF(+*Q>W2R[>K/35ZNY#I8]&%/*OZ<[N
MY^][.*>I^. A8N.12&<]0<(;0H.A.BM6C%+7230.\J&O3I0)Q5UK!CYW:IE'
MYPO[+O<7'3D_L,K:)B"7L_Y;7W? ^FLGE-22,(:-.]1!I*]X(,PH'HL6Q7MW
MC11D39(S-2HF-[*$5GR!I9H\&.H9.57G?$*NG@8:XH<'YWXT7'/Y\5\1L4 ,
MY$MQ*Y/+7@A=(H0>404G@VY<8C,%+KO0)=X< 387CX\>W5KK^"Z6M_=G.V_W
M>$I%4J8)SP8'S?%$P&HE8A*SD7HME6+H^EZ"WAW1YXW.MI:Q]3+&5M4RMK:,
MK3_^QIX28^N5.-09W&HR< 33S+U6$3PWXUQ.,BEKA DAQKRBN-5QMTT%]7^<
MV-6I>UB 7[WB'A\"PPHRE")S029PBYT1%I920A+"6T:]LC6/']Q1S>,WVUK7
M8ECOQ9F![][? V]9,0Y!%VX%D=HHXFG@1(4B*)/>&XO.\QIS8HW9!2[-PZ!8
M7<S2QN C]T9FEYS,#.?P698]K)XO[L)M4:S70#)_WWZ[%XJE/*B, (XJFZN)
M9440,/J>%IYEPH&'X-(N2.?>%L<Z:Y_N$LMJ4_*I6,,-2$R,.A@#(L*9M#*R
MF/1BL6DS0 \E?/L4XG>:4LC".@*1.@B?BXPX804)PC /^LVB,L^>6[7&^8^!
MLMZO%+7IG8O% _O!77;PL TC6B,$2 M)O/.1E!+@?$HBJR!7 \P*/B_U(3HO
MF)6,!<<E"ZP4ZU*,-MG6VOQ8<?K,M\[VBG/*,$-!B$J$\TYG,#34D)P]35HZ
M9SE'AX<;NR:9^"$&YV:"U&:3;]G0L_$5Y(-K)G5F%DXC[4 ^%$=7*! 9O0F%
M8PC#KN$*70!HO2(8NRZH=5DXT2T#L!;3>F<RMOD-W&VK5;8F*BQM>2(MM@ZF
MS$E@R2MGDZ()445ZOF Q@RI:&M1Z/X+0@EKO6VJ^XV0*GY6)&MR?P, >6:&(
MY442@]A$9;T% _7LN;P*"CT):[U_5.N]69X6U7J-#M6SK;=[U#%7+%,D9)^(
MS%P2IUTDS">M0]+>R_+LN7L87.N=B4.+:[V%6'S#2<#<<[ >B7"(H<#/<6!-
M)$TD&Y89]SXF)L":./<XD:V+2:EG@*UC2.N5.?+;P5IO*_4MK/5!].(M [T0
MSF5CX&SEHE3-(^";49O@\7@:J2I%)6P#N(0 ]OK UFNE/B\$M]X*UVJD#8$+
M2TOVTBGG! 4!L""BS-A@S$@D$>;0_'!!TJ*2R86AYN@NZII,FY58+'7O)4X#
MII(Z2RL$*T2=07D(!G@FAOH2O3;%IGAE#G09^.I8])@>\?4OB6%=_>(H!N%_
M^*-J"-D<C/5JW5L2RCI]P7N LQJ-L]"LD]%HJ72TU$GOG8J*\Q@M;^&L/U:1
M]REZVS%(;G%6:8[@5DDM2(C)$&:XY$EI9/.^3GKQ,A#K7:49;R90;9KQMG*B
MT/TNB.9DD:2B()@7R8+!9XE0FJWTR<NZ1_6J-./NG"4;&YZ&W;-_-.,+-P9?
MKU\!>+W@L@\">K6L4,TT4S;"8Q(EL*"EI)RJ4&1@I06]/B"AS ;?WMA#8"NE
MCA+#"XX&EI%XXR4IV(&?O"X6QZ+*6X!>5Q$?-@)]LTY-RMD993%7:>E7LAK.
MHL(P-!\E9SNIRLZ>IW66I_"APBKKJ,H82>3L;(B!Y>2T+REPW0QIU:,AK2U!
MX4,H[2;VQ8$C(H2!HT4["<Z(X%CU9(IDSDOB,J7(D#S?T35&+R7NF8-VX2R=
MRR&#:W<)_Z+%%QT@+E59RZ1IL#%Z63C-GE$A4ET0G16M%OYUM9R\QIR'-2RK
M9#7Q6A4B&0W$*9^(9<$+6722./!$K=,%UGT:_G4?A#RW-#!M\?+NJ >_;N_O
MA:R=I1I<5? )P!/0F5BG)3Q[QIBE,FO!P1-89%!NP<9S/T+0%B[O6V*PW!UU
M#AK<=,(KKH"D''&))G @"_Y=Z(QTA.JR^>%35#S=R\G"YIRU"ZJ<MZQL9BJI
MCLSHF"!Z%M1[#@&]LQ#MLV@<O[%9:BN;5\O5V^];;_<8%X)AAS \?TYDY(8$
M[05AS'C+778J()1K0<+T;HN:C(,$B&"MI5D*;4*$8Y2[E 2WHM@PR_\OVJ+F
M/4@$.C)@3J*5SA'+O<+)*N##)%8("[:X"*XOS0[.)CU?U.S\#/7,"XAZY@WB
M+>N9MSV,VWKF@ZC$!PDJH96Q7'E/BJKJF1Q\>VHXB=1E"2>6D=@=?UGBYA'D
M:=X,1D.V*VE9I04OSLZ\.1V@ (\'BF&Q>#C*P8(Q^ +!=1?'&^($)'!Y^N>5
MK"9_2[%@A^/,*P<'5?D+V)[PK8K5JR"]&2<S.3"]FOY8CT!JOO@%?E'!B9-5
M<(X#E@;'_7J(5SVS# +WH]@]1L-VB)BPROJ=U]'F%CN>A^YC/#T\[35SUM"C
M'I[@"X.,0_E.ZN'HS??&ZBH5M/67$SR2\:Z6,4G%21:494)+*E.200D5/0N1
MX<R84$,L*(0H53V[^N$2DP0V9L8JO1@O$.W2^)9?YG"RVQ^+7R5]K3E:S"6]
M<;:UOZ=RX-Z93!S'"3Y9:!*,YJ2$XH+*EDN:D*QC@=/6F*-?Z].KEICJ<,8\
MTX0 W:XF)J1(.JEH(I56"\L%2U9KGD)2M,DTS8G/7*8)Y>+U$<Z5/JQ2"V.!
M.9>C*@/U=.M@( ]T>Q^.)YUBR)(XP[%>2BEQ162" [6B@P?D<L3N'CV/3YSH
M[0'S<MOFG5L:D$5I[)'OGM/+4W2[0.2Z_7JJ%W@Q9]5+;37](NE 6(P#TV *
MPE9Y1&J?C*-5."/.,BN34<%(C910AKHUNBC0.T]AUV?5(9SUWYJI7L/..]@0
M>'6C,^,_K'7.#KKQ &<XQXGC#8\M^%?&@86D((HF^&%W6$O?Q<GR]4Z]_=42
M<.IQIQK!/#OJ$T_TY40VEX3SJ .U3$I'2TB&RL*CD<4Z)D=N.!NYX>+JMOK+
M1/:"(_ <,-**\F)1?LVJ1GO.M%$)9-<A:Y#C$*3&3%02.A;!-<1/</ QMJ8N
MG]B"4G21X,X>C95D+HDRXLR%)$S&$>C2,B<C]58Y*XHWDN56J%9#J+:^;F_L
M28\ 5>N(E]BBIB,E5KM$D@?+Z)&[Q2,]_E*#.:YKKMBRYLJZ8E6*PA:3I-+!
MRT0]-\%E&Z5,ZHHT62M9#R59R M25'24!PW/0QN"8^^)R\H27YS7K@0?'9JK
M-3 7:Y1?VB9[C\8J<,/ ?IHB L4YRBY%+T+06A0MK36M2*V&2+VEX,QIRTW$
M43&!8N@G,OPDN2,I(3A2%AS;\^RYD'*-+RHT7V2M=B\[#T\.(#H\\\,I,:MS
MHOC7@]Q+F#/QG7?Q(*=3</*8>-GIGQW!-A]TCSO[@_[I<>>7>K+TNZ;BQ,0O
MZ==?Q*_GI_%H_SN;7^.!/]K/. ,>7V9.R JR7V5>< P\9D?^JK\H$86YV\/3
MWKYOV)H&N?JJ7^N%-Y.MAYU7IU5D^\8//G?^_/-%YY?1<.OSOS>SJW^MOD!U
M-GO-J.O?>_W@>QT$-W?^7'^SWOD%-6C01VQOQY?2[77]2?U<__"8X=H]79MT
MEO_?BOSI$&Y_\RO<9P4>?W'@NR#F1]5WO3@ 1W3BQ1VX9H1;J&[[+/=Z^-_?
M!AB\8\+KW8D?G'0V,1\$@?HP8\II?7Q#,^^;NJD__#Z\&3YWY)O,^Y\GZ;+[
M^;U[Y#O_?>H1.>L[A_7I-1T*P-V%OA\D_'.-A.H/AK^N=]X?]X\F<PKUI[H#
MG'-^W$#HK[9P:U,;A_<P^QS@&S-<*RU+J)4#$\([E?&(=S1@@548)R*-S+,E
M&$G.K=AT$FL2<(4/X]STM39N,9LQ?._97LF.6>T5P90!D1)Y)J*2$+7ZJ NX
MT#0(+$G*-;NHWHTBLIPD4,>TS+ID;.P,S/M$$_<T!O@B9\!=;R7AX26!(R>]
M+E8;'HG6-F)B"\?FT418B$E0GU0Q6)Q6;DVH^>DAC7%9F[ WO6]K%^4QI@_$
MU:]^7'ID5Z?U(%<G(AS->+]HU&MHJI\M6+S,P^Y^?2"<(T'@0![D$RR6H'$^
M:=Y:O7(R_ES/G_D:'[_E!_&@PQV&-<R-DC^IN?+2QEEXYJPJ*1@1)<T0BAD(
MQD!1HW!!,HDJR1P5W%VADHOT<./TY* _@&?=]M-=H'U;"NRP0?(<+1U1RDLB
M4]3$10^!L2B%R:@U^*"8. 0YQW^631P>CV5V6)_SQQ F?_&]TWRS6;EW)3$3
M%7-P.78&E;BGOW%A3Q[KNKW[EFZ?[3&?D)B_D%3EE;4OQ#KA2*$F*>I=MJY<
M@TZL\FXOM&&_H- T+NW.H+M?=>^.WWVQ"1OYN^N=G8F"KZK3P[5] Z>Y/U7@
M'1=_I]SV4<!Q99$7"\$09X#!!5\<WWQT.O*3_=C63*C#C.AWEH[9:3%*"E&X
M#S@C(;I,BP3E=#98K;P:5]A4:Q[O00GBU^VW>\E)KW$L-/.V$%D*DC]X3[@&
M_[4X4S2/SYZK"\UC'74O(]G5L5X!,$>"V9^7\+5+A/%B"9PXJ"_3R:4%U8(+
M;U(HN= HD^96I9R=9BDH7C(5K:#>JZ!^/@,ONN20 H4 2I4,7G0$:7642N*5
M$"(6E;P&+UJLB8O.\<H2+R.H-<%"_SQA,V'*E[+@[4B'2T8ZZ':D0SO2X<??
MV%,:Z7#EB(:9D0X^>Z>IERPI)XUP5FBG%4[<]C9+S7[X2(?K(2NO9?*SAX"_
M<:<K!,=YC_LUZEC=80>$H7N"&6CXUB]]^(;*5Y] 8"Z^Y&3B9@T_6-5=^_NY
MZDJI4.=#^%,O=R*2+#0$$$U.J"8L_E8E#1&0"3[$"7[;.6Q]1,$^@P:=#!.:
MP0Y=^+8&VSX8$PN-'L[7"&J"JVDZ_:N\3,^?52RG>!'D(ZINNWF2-2CKLD<&
M[X 5-T^MTST9CIX^WM.$U_>E0I3F_SV%P_LR!Z[^Q"R-+I/*<J$29U*&8JP,
MPBFM<O':X=" RR%=<AJEG@>H\G D(4<*WM;&M%^W"68!LZ>[_;]AT6/'C?"G
MYKE]>JNVWNXI*AR#1X]3V0R10@OBI94D^5BL"$5IEQ'OLD[GD7W_-9+21>[_
M5!]R53.N\W65$%XM>=.8KI7"MM\@6?J+_[5S4-F).BK*V#=RBL6K7O=_3[&?
M!-5DK#\M(G:E%>>#N#-$; /"/\+,Y$D7\?M54?2H0LD.R7DYO(8PCE/G4]JU
M\+0Y;WQ*7=C.;JA:_^%L^B7\VMCUIJI9O1]4"HZ,HS1$X>AY%-V*N=A_\PVF
M<HY<X*)5UL7S7^*OL\#,IIF@?SSJSL+?F@/E"G#F1:#.*@,W6QB8RJ]A+J-T
MJZKSK&\!1P$2]IT7)2:>(9YUYXFUM0X\/M3"JKRV-J'HXVU#EV"NK@P7&N23
MT\'1A-D;GI_W_N2T9MXYFDB.S.9-_!??[56;@$Y FLC57))&>20&\YQR;7^0
M:QZ"0=WK/6Y\F>M;0:OGNT?PPRD\H$-,3 URXTQ5SZ6A2Z[[T+I-ITOC$]4C
MLN#-.""KIE=I\JN#BO!J3@ZJC;I8+%$@JKTY78A$>!S[<P&ISCDE'UU)7IWJ
MBO_&7LYNO [33M.+B%M3%V":PQG%8]2UN!(W=B5AT,3.+,,9=+OI<-X%%T.T
M3F=P,+RVGKL@M(GP \MVW'E1@_C@AW8ZW/W[(M\_B)V-O:AR=L5Y0BW%)@P.
MODBR@F@J)%<RI6+DL^?:VK5%PPI6B$#(J"BE=2(KSJ7ER25O#$U*RDB-L&7D
MQ+;SXY:5D\BWS_:LIC'3$DF"1TQD<(98;0PIN123'97!1&0S%)?YK-/SX]:N
M,T"N=LE>-[\N)EVMV0>7;(*XD;BT5*L/)73[8FL?A(X9*:PERB.M#%>4>.4#
M@6T3Q?)HM.?7,D[W-L>I:#"0N5 -CI#4FOH@HH>##,TF-5%<T^JT!*O+2<?G
M;R =7(H <L%(*C021)>38!7\RFDPS&E'A;[2)"%8O.HM;FB?4!RJT0#G]&;H
M^]S5*75WGM!U2=G;4ZP1&02-)6.YT<$3HSERG I&0$H"8<S%9)EA4?(J\\(O
MX,%K0L-[8\*3MNB@A.?).LF+#=+JDCW\G#(/15TA'RT3WAW)R\[+#6SIU-$S
MGN!A%\$+D387XE.BQ$1GK6,EQVJ4H)OOCIH>H7(#.KS[D826#N^^Q89OO=US
M&#H%7P@/,A#I;286CR<;P=-4P2<ID6WSRN%OU^'$NR1H']&T7'JZW?M\L'LS
M:2V+WM7B^/HKQ&XJ6"FUE81;K8ED8,!LBA*,6K+4"Y8%DK]R,8^&G9''F03K
M2-#NAF,OT)!8M)'&&&44T16:@I-41EB9,Z[EV'L(>>%(*!8$?E*3'*@D4N%D
M.4E!<HR"R#AK./<RLGE>:;]6FVBO<\ZQARB'9A555K0NUDS-D5[DZ-TV"9$]
M:A]X_\PEZ9D/Q1AK.&@H,PK4M$U"_%AM>(\,#%X;IHJ3!.)\!H>Y=!AF*I*D
MX=D8K7C!,7IVC=EK]S3?:0[B9E+4YB!N*QPX-$/YQ 2.4$O")@@0 B,!1\N!
M4-A,N<@*213D^H(ABY-IT<LX/D<EEVGYJ;JE)ZILTS.M;D[\>5MOK27^?!#A
M^X#I4483HSQ2(E+.<#IK1EPIG'B:(^66N2"P!6Y] 7?'*A)_+BY:+I;RYH"^
MN]%KTG/CF(R14R4MCS8D9:-@#,1>%:VOF$?43DN\,]&.. G;6LN4EYYD5V$+
MN20>!)S0K!/5$H%I"6F/W)ID%_96-Z.NII"Y</!>  EO1J]U:FE$3_5+'H"?
M=T>G-&->!^,C=UY+9:AG6EL;M8HT@#C9=A3;O4C3_M>MC3V3#"U!69*SCECD
M5L1:"2X<HR(XD# EJU%LEP+NYJ>IC<.#>YN25C*L5<,1'(V1P6J?O!.::F6$
M1"ZDV9AX=DK:=.ZDG9)V.U%2X/!9I87A6A)K'"52<D,<99'X!*H<= @Y>:P@
M7,QN.S<EK=.MZ9;'XN2GIY).D+4=P?'8 <?IY&#8<+:-C5GG?$[IDK2HMY.Q
M1> <_)K?X$Q."*6$J+R"R6W@W>U7X?-OW\[?TF1I-N#NTW;_:*=">-:8L7,P
M\7!DX69.S=+]FA/YG@?])VSB/B,9"6P@%T9RHBR#*!49**VF@10-^Q4$Q(1<
M/GM^U)\7RTO"B!L+X=+,@13.0E&E_YR0(00;J+(T9<NS3=[,$9VNDA"VKELC
MB;L;V'F.!$G%<TI*2!(;>AGQ"JOT/*5L"N<Y4Z3%T6M2ZGEQ/%LL@0BL/>U5
MY0BTGU6^>?)L72K&U=YSJ\$9*$YZ+,IH+7""44*$4TI7"-N"3//$>=IHT$A6
MVDSS1;(BP,V'<+48E04I3"/Z$,3$)W#S8U(YXP02'>$T57S>+YO.-"\9Q];7
MV@:M!H=Y6C9TH=B&P6P028))"C)D(:S7FB;XR^+3<,;R-$2#3=VA:<NKK0GB
MT&?=\UWX\M]ZU5B!)R4#6[N;9["./19$=$Y[HBB%6,]*2RR+FBB7)3,V&NGC
MLTX&33G&!MW!:?Y!J8A+Q\-7*;GQ*-8#7Y=>SP=X3 :A4T?NV2)(X^*T\;]'
M8GY2-0Z,60(&(& $GD+/'P_SOT<__"=UA\<]_^W?W:/J7JH/_6=:(9"/H&J2
M #/4M#U7'=#UR^>=]DB6@]WV)P/X)XV^N7EYO7KI7R=I_C7!UL$QN?!ENLXN
M?.VRRS*USIB^T64O?TW2B[_T%HN% ^8>%JM4NUANKG?9?U626TLO* BJ477J
MCHDH$FKFOVF'52?$Z'J7O)4??\4W_V>",:"7RYPZU9KTP$05[JHV'7JE/9MA
M';CX>33F9W3"'I]TJO)K!Y?_GR6>Z[6N\W,_=';MAWX#>7V M]Y6R=RL,)ST
MCY>0A'I;+Y2%'[#9V^/N]O=(^MS[AJ=_W:@TWNH[W8Y'\51&L5&GRE<_Z0=Q
MW*U[2*<>PA5J%'S\C*SE1XDTZXP0?99R8R/YP+XTK7L19SIZKB$&%][XC:Q%
MU;6[4L]DR:9*&UDLTA?,WAKC71&"\<*421 Y4?K@%<O'&+P>?#C\VMOY],?G
MK=WM[O;NAOQX^%;N[,+U=S%0_<P_\%?=CR]A'2\C0^;9T6?@NTX_\O=ZZ_#M
MURW^FFV]/#C\B"6"E_'KUN$F7./CIP__P'6_OZ?;W]^SK>\0\';IUS]W-T^V
MWE$,D+$R18M7-AA&DL3Q5Y$7$B*CI"3.N329I5B03=RL&3%?Y[Q?G;F.S]9J
MY&1/8; &MLQ%H[G4R89$54R:^Z+A)>^:O**Y.HG=:N2#:>3W&8TL-&F'E"S6
M24>DTXK86!P1,I6HE,].<*0W=&O,S@-@;Z.1/TSO'M(QNJ;B/5P'N'PJ'> /
MK5AL1K&TC,QX08E/PB/K42;!%4N\-CHG$9S"+@1LUUS \OJ3G70KJ'%CIF91
MI2+4[2*24OWO444DX]:V3M4B>;O Y.K[?^S.CI3<A^2S9XE*.!5#2LYFFPR8
MUJR4;<./E;/)W^;"C\@RE:(80F7 3I_("/BIGGBELRKPNU 0?DBVIN_*UYE1
MC!M9WI]?N80+.?B@=4I!"DTME\)HH:4J.GJ1VDAB!95K-I(PVK,<8B3&0$0O
M+4O$EIS!_[$N0*0ON,J/4;E6IN!RC['$S7JJYF*))XG6?FB]FPXT7CCZ\7\.
M:#S\^\C_XTYW/OWV":[W?>O3/O_PSZON]LN_X/<MN?U]$Y[#![A&I%N?/M"=
MW<WO__/][9Y(-EF6&8FT0B0%1IQ2H!W29B94X*"X=4.7O$1IKZR9_B#5_>GC
MCKM/I33U: &Q7>J?(NRF"NZ>9()SY9JD6O-XA7G<?C'G\W-/O2D^DLB2(C)Y
M16PP&4( ;UV6SA@N+FZM6I$$9ZN5$Z."K70\2*L$"Q+YYR 4UTE@&X=0WK1E
MAU74RME@@?,@E*:.& '>AG2@G];G2#R3(0J:N"W@=PA&U^P"JL,?K94K?8W*
MB?A7A7Y]/GIR#?;[<=%0-TK8J32T)J.?A(ZL; LWDK[6;%(5E^+T ()QT]NP
MD[L5R52OZT.W5Q&6X*R:,<_+N \'C-=QKI'4_;J7#CG7\8%TP+L]'$_ ::Y]
MSA"_/F+OGOGNDP-_TC1Q#O#K!KENWASFDY->0_@R&-]$3C4EY'!JI=6,G@'R
M<5538A-V&A??'0V-A=^JP3FA(:095H0T2%+3&9Z&(7QK/I]HU 5[WT46W*8W
M$]9]@&U+PU'O8'5AV-_/<(WZ^K.W7*VD]'+$Y3:?BF..G#C)D8/#!.J;1!KG
MXV8J4+4CW2/8K-SYI6$A^Q4G)\ G*L;ZZHK5LO#Z$[<ZT1E[T0/'_MC^Z<G<
M4ZY::&OBQ(4/O)&%FHN*'&8_/!TT^W/Q\^T..T?]D]'.SO:*M&/[IL;VF79L
M7SNV[\??V%,:VW?E&+Z9L7W.)>\#R]S)"+&X]2Z#Z^BBUU&;+.P/']MWP9;B
M$4#J R1.M.2NOO]RT<I'Y)QXPOB3>E!2U9B%\XCJT4/'YU-E('"#M\23\70>
MC.HZ'EN.X9Q\A0=<KU>_U'Q7_5K53S;(L;]_!&L>?^?IL*(SZ> 4&EPKP75W
M_&$?PMCO]?(.,YRRJ]H;N7EXW.M_R_E='GSIQGQ!NW:OUZ^]W)WRU^@18,Z^
MVT\5/]03[IW\NO5R<Z]P9[E52.V9+)',>!*2U"08(ZU4.K&\&KV3NU/-D$W_
MXNDAB"!<9#@E]@M5;,1EVST\AIBW YJ#+99(('GNL(Z&U!Q7\C$Y)O.7R@.N
M>X6'OSZ^-DKIUOE]=";2=:-OVM#WX,U^[6+O<['F0=HHW>-LU-D]&.1ISI/_
M+PS^]7R*]^0N^I@>Z>/9GF6$N>+I/$@S[NH]IJD(YNEUNTTUN#[)VV]W_^Z[
M'#O5?_DZ5RN.+\9XI9IS[7OSW;\W1IG/UC9IYS%@K?_O^[O_1UK9G6>I\LHK
MRJ75/GBI5 XY\2PX%U$(S?U5_9WS+%5-,)W3XEB[F0AS)<'>(Z6J:@J\&W(+
MPNKM3YOJP^X?L+ZW$D=#??C^1V][=X-_^/3;9[@F^_C/YK>Y B]>DV_QK=W>
MP=;A6[[]<E_ /7[:.GS/MEY^[&[!]W[X]'</KKNHTY.GD#5.$6(%1T_I)(CU
M1A!C=,I.^$1I?/;\__F_+&?\/Q?07=V;UHSLZ!+:<Y<EWM;ZM=9OQOIQD4R@
MV6FGD_2*.V]23%P9I$Z6)5P!:KFY]6NMW#)6;@[SSAGV7 I2LI%$\IB(=<40
M):U@,14MB@-?L+5OK7U[VO8MP7WKF+($,R>Q/5E[#?\M4K$@Z!+,WJU]NT_[
M-MO$' *R<BA.LG">@%&CQ#.1X5<#]DWEF&-L[5MKWUK[9EV*-AD(>Y@,E/HH
MC7:6"E,T#;HLS;'<VK?[L&]BMB&8FI1]2,24@O:M,!*D<R10[$@M0CB;GSV_
MB(YYY>S;'?$6/)H<XYM!'P<K@B)]R;W^,2(C+TPY\^4>PT+3_*A-E B<%3BS
MDU=@HFSP*4;M2\H@Z+)0=V\)MM9$7=]$S7,6,&8=\TF36"3.8V21.(/@%R>#
M4H6'8/BSY_.=2TN:J$LLP7UY6=?M 7WRFAMTCB9)V':C9!%P0 7MDLFF&!:\
MI6UR:"4T=S8YE&6!T$E9$CW.%68AXNPD2133@IEH= IWD1QJ-7=U-3<5%QQS
MROIH9.+!\P0[KY*B3FHG2IOV6 G-G4U[%!63D%:1%&4@$,]IXI*.A&=J&7?2
M.AR@Q^;'^;2J^].H;C$Z.H9Q8-92*^&4T;($Z2%2M#Z)-J)?"=6=B^B5A(-5
M%B)5YD1*\)0#%3@DV&G)K&4F,%#=^9[B'Z>Z3PT9]"[WX(_[:YW]?)0'OK=6
M-Y.FP^Y1%]L[L-GP1F'\@N?R\]DEN&T;6*%<>RN#"<['9$,T3)>@@K^*E*2U
M2P]@EQ;0D*0$07L,Z$T(".,S2\1GB^RP$,=#+" 5U6"7YF>7WRS5N$+5DE9U
MQQDXFS05)67FLP2?P7G08F<T0@6B-&T<OQJJ.QO'0[Q63)26.(7Z2[4@EDM%
MM \9 CHJ$P/5%:I5W9]7=9-*$HRV-%P&:02UPB<MA01=CK&4V ;R*Z&Z<_@%
MK8WFP1#GO"+210D_%8&L0T%*GX4R\=ES=U<%OE9U5U!UO?&>*_"ZF,@2SEMG
MBTTF>G#&0E(TMH'\2JCN;""?B@9'*%$2. ]UJ[=WGA&:)>RA8-XF9 @SMX[D
M[U!W?][Z^P5]HM5<\HN:V9?-I5S*=4@OHSO\V7%5=_^ ?AKKKJ06@8(3+GR1
M7.G@3,0Y*X4G673D;3ID!:S[N[ETB+/>>Z,U44%Q(CG/Q"8GB!>R!..HBY8_
M>\YN[9C=N>;\X/I,:T-;&WKWI:[$0BB:F52*-$98ZXV,TC#E!/ZIS4NMA V=
MS4M)*9D*U)"(52Y)2X;@MFJV5*+(D&U4.&',M3:TM:&M#;UG&WHCLKC6ACZT
M#9V;TFA3C#%(PABB:T4!%U1G19CD26AK&!QWX(>R6R?W6R/:&M'6B%YA1*7V
MGEN=LRY.>@LQH-9"YZ!3IB6FU*9J5\*(SJ9J%8-P/MM"P.?TX(@J08)PDA2E
MDB]&B5 $.*+VYXGF5W?&PN6LI%6^]O0H^\'1B)=W$0OIF1]V+ATC-UMB"1X.
M4N4-34R6HKQUD7''C8E"2B^J\7'S/H^:5==KD>1N]X^^Y"'H]$;%%US=T^3K
M2#RUW3_YD$_.*72OF.#2J+]^G.I_"U;=C6_POCV>C.0*7!]*"PYC48PX$Q/A
M14 \J7U4PC][3M?G6Q4Z(*0]% Y_TKF PWRM$BW8R(0\T<M(%07AP=1M#K ^
MQT5(X$X+%Y0+L%!9#SB?/P1:J?KQ4K6SN[FGBBHE24I$8II(3Q4.0)<@9%ER
M[U,.,J%4S4/>KI8JMM[9/<A#G/$QK.9K]'J=4,WG&.S7@C9)I-RPA.>*0'F6
M0AS,7[<:-%).3TX'8S;EZ@LZM35%;G(X#OS^Z-5.'W[MG!UTXT'%P#RVJ%-6
M]&*=0 9U7&#%C@Z+#1.,YZFB5S\^'O2_@AB=Y-ZWSCV3E-^;?M3$Y:_Z@^9/
M^#XVI31PD,5_I]/!-WA^3T]-V-;N^SWD1Q,B,R)HB$0& \Y3,09YA)A)W(CD
M<3[=NIKU,SKXT(9+TMVOQF2G=Y/3 E;B!JXF<Y\:^%/-WIF<>5!I]/"DTM@T
M&M-4C>.!=^]7,XKJ"0;X]]]ZX-F2=_&@W\.93_4%CF%/\0V'_91[Z_>M\^>#
M"<[5_8W_AAWTE8)7.[13;]#?<-?U>(+A\/2P_MLNNKY/>QK!ZST:HXXV.J(H
MIMT5!#\^T$"8BYE)!FZ+X+/33/!(U-E997F2TAE+/96\4!5825[FV>D%FXU0
M#3NG)]U>?3XTPZA\+Y[VFL$J1[%WFG+U]_'!TNN6\:"L6LC6.H/N\#,IR.[=
M1<9<$-G. *Y>MV",/_FEC]?M=4^^K8T'?973036N+.43W^W!FT+N]<] 4.?"
MGUJ=%\Y^N?+N']&0 BW7G=9WSTZOUM4-+WOY:_(^)BK@8FU+I=]RQ;=LX:O(
M%K[2*?-74R[5:'94MQJY>V?42C]U*6&YFW^\90(()"LW=;:?RE&CG,U*.BTA
MB HEE6*35=Y)32V_HN;*YYSBQ4.Y<(CG?C5V\[=OB[WEQE'^O9X9?53'O?\T
MN8.-.G50O?@2?"T4>W2IS\L.]''ZSTW9X0/=^F=+@#\L/\!Z=EZ^_?IQ][>#
MK9?;W:V7$7Y.O8^?-K]^!-]ZMNRP_>GMUP_?X]G6IX.##Y^BW'[YJK?U^^;9
M%G]]MOW]56^;_WVXM?OJ<.M[6D0Q;H3G'H2)2(FMWD%YXBR+1)3@3)8F.>8P
MP63NG;]ME1H_6G+*EISR GLIA5126E&8-I+E8H.V*HLH;<Y.Q*O*JZV]?%SV
M<A8OJ+*C3GI%N'9@+RD833"?@0@C(/@6C+,4GSV7Z\P^,;[+E39PFU_S(':'
MN4H0SO%BW)JC9^7N=VD@S<]MLUG@*<,=.N>]A-OUU#,3)5,EVL*<75Q:OSM3
M/;:^$\G?D4B^08ELK?(R5GF>WY,RKFEFGM#B"Y&1<6(5%21KI[772E">T8MU
M=P5!?$0@PM9ZK=*]W<!Z:4=%R-1FZ:U4BCOCK,G">QZX5?$""$=KO5;6>LWZ
ME 6";)V%)4)$1R37B@1D2E1,F&@9A4-*/7NNUN^L"V6%"-=6VA!MSE8!1_E5
MG U>(0=^O4:^_2:/8F4-U\):^HURB NL4[C:.H7K6:=ZWW;SX/!GP\H\J+%:
MP,$6)#.Y4$6T,9E(8R(BTCQQD<GBF4P:V6#T.KNHIGTO!"U/2=MNE(%JM>U1
M:-M<>VH,RN4@" >_#TF4&;')<X)8<5H"_-\QU#9^J;8]A13/7XM!.>THD]IJ
M')TB4N)N:W]SG4)W&F+@AKZ"_7S=;.=?L)OC2(/PUIY<;4_F*4.\S!X."D<0
M.T;@Q.#$,I5)E#(8&D.I)@J+]16A=OX1*O1?-W)46DKXZYN=6Y;06K.S\F9G
MUHUQ/D?K<R;9<D6D8HZXK 31*0N96#&<%<S/WKIH]K.8G2>573E'2K>,]8_5
M6QMMYM_CO6P-Y]*&<QZ>Y;AQ@:&_EBH"3]C;8&0@)L0@8[+"X>Q@1N7M/;:[
MH?#\\::SY?Y]8AY;:WKNQ/3,(9UBTI1Z1TQ)D<CD,K'9%+ _CF7LS5+(+NGT
M^HIP]O]XR_,4TFPONU^Z*1^ESK=N[LUU&+1A[MWY:Z^W7SV(V1SM:&LTES::
M\T D;XSA,5!")>;K<Y$D\)R(BTJ4+)AAPF*@V^;7VOS:JGIKK>%Y!(9GUENC
M2!\%MH<$8<#PZ*B(*\*3+$)6/D1:M&\-S_6=M5%O/#RI?"%AV61O_HA[8_[O
M$VP<S7HDMM4?]X<5F<N_![E7C6L\[Z9'C9_X5-.+3\\_XL.PWSL]N?@C<XVZ
M/XCU@]MI9I+)?Q\,SMN,]S,)@^P_$U]@L?_VO3/_;?CL7]-4)MVCT<4-AV]?
MG7N?ZT>N[GUS>_.OWS]T7NV\>/]NK?-Z^\7%-#.KLN3MG=W-=YW=G<[N?V]V
M7NQLO]S<?K?Y$G]ZM_/GZY<;N_#+J]?;&]LO7F_\V7FW"W_8VMS>?;?R-W8!
MA]3*K_N7]T?^-'7AM/QUD2(MY =Q+GD?6.9.1AFC]2X+I5WT.FJ3T?^\DB#H
MX7ES)OV*2=Z<#3BDOG1/OCUUKASXV^L]DT0L1D-,D;DE.%V A.(\L3CZE.6<
MI>2SW#<_Q.QO=,#; \GZ=@Z:[?AF)\%Y37G0\;U>IW]Z,CSQ1^A(-$10W2-4
M-S@,.W#Z'@T13%91[QS-,H!TIM@_QH1PQX,\1'U-'8\?[O7Z9\-_CS3GT;#B
M2+,NW/4885:"%4>I>V+%>4R+-=>[[!/EIMFN E4P!Q5US\X,:]W3(ZL9-6I7
MCZ/IUJY^'G765+]4[36=-WE0$Q[A:=D^L_EG]E<^]%TX(O:KWU[ A3"X/?6]
MZO<_L7GC@HZ-GPMGL?BQ_>;A* 4Q\B>=ESDV9R:K*6!O [BX'0G&ZN4'+DRR
M#5'OAC-)MAB#LDI$YR*75(:@<HDN!LM4],'6=-V,<<'N*[?6&-&=<R=JN\D&
M7H=1^7'WZAWTMG9[/5C#UZU/!UVDZ=]Z>=#=>OG'X19\_X?=@T_;G_"?5[W9
M/-O.[^^_[OSS'M:V^6WG]]=(TW\&_SW;.OSP#>[U8.?W+8[_;/WS=]F:!]#2
M8%PRT1+/BR&2!8>]>H44*H+7R4(@!$XWUV:-T5NWZST4!43+FM.RYMQO#_/-
MK.6=D^5,V,H9IIR?L:'YP8SD7#%"!)>3U<3F $;2ZD!"]HR <60XGB8*2;'+
M0.HG9B&7N<:U[FGJ"W[>R=F+[5#%;C5/<_E4:\$+W=1;CM2[!W]UFK#L]T%_
M.&P]UCLSQO,0XL*83<E'8AEZK$I(,,O)P^.E( Y>2"YP-@+7:Y:O2'6X18;<
M*Y_,[4S"\D[9\#84AJUC=@M;,.N8I<PC$S$2GS0ED@H+5B%)HBV7ENLB@Q(_
M*T_6K:]Q1[G"1^->C33O9@[6XVV-^.6'>UA8"GU=4;B_/!W TZL-8V5#AY/%
M\?$.M79Q&;LX#]O-X QEQB7A/EOPD4(B7B9&1%&4%I5,81%\)#7O'\T10-US
MET/;XO2D7*.1AK?>T3U8@5GOB!END2N4X,AR(D7.Q ;PCI+70C+#- _VV7.V
M+E>DX^E',VD]Z>33"ZRI]G+Z5^D/2NX^O3S4CW>3;IF(>E5OW.G@W+JVB:B[
M,J\+F -IB8&5: @%=XI(:37QW@IBI0]%>&D*E6!>A5J3<G[:R/4=K14./7].
M2_ S.%H+C$'K:MV=+9ASM:AR,6M&K-,97"WF2&"R$.J\\9DK8VS-0S8_V+I-
M1-V@=>GG>^<30^[-P]WO!;KW4QT_"_U0[).T27E#$QB<HKQUD7''C8E"2B\6
MSP)I<7N/ZL"9KX+:5+BWV!JKC";2*D]\SI3$$#.ZGR47#0>.LFM4RW;473L4
M]$D/!;V9D6SA>H_#-L[!]8S+U 9+"AA'(K.)Q!4C2%)6B,R9-9X^>\[OP!E_
M3(;QCIS*E;4']];=>]/9 E<J_;C-9Z+#!X<.\)]SZ,"#V0,V6PWU-M$2*#'!
M@J_$@R(N\$1 !$Q.X$:!87CVW%YOZ, ,]053E9+]@%!ZPN@(L"RI?XK=P)<"
M:MM5WMTJGT*\_G<>5JWG1ZF31^3&)_W.%QQ&<><Q?!NI/U2D7F_KQE$:3[KI
MXY_: /[>#J6=^>H18]ZC'! K<?"R<8IX9RFQ7.=$-<W1.G!2'5L3YJX:[U;(
M&[VU-7C\P7@;<C] R'VUK6LC\;LS<K.1.$_)"ND3*2X&(I.Q."?#$26#5]0P
MQC/V:JQS]O-9N#;>_C'Q]M(:?U$8_I/._GLP8S 7AKL"4B A[L[1@S'0#'F_
M'&&,2N8,2\'Q9\_-NFO#\':5;1@^U[A2L;W=5^F\88*;>>QM4/Y@0?G$)K?1
M]QU#XW<W3D;4-[@^^'W/&F\DHX((&R*10BOB3 +EB(XQQ514ECU[SIA=<[?O
M(EY:U58\.+^ES7C\H?L2#^"1&LN5#^PG[&4;P=^EH?PV;2B3C=D)[8A.T1 9
M32*624^LUIDJV'6O'");[RR$?S16<IEK+'53C\)DK&KX?[%=:./\>S(9VS.^
M%?I/L.&.!&,AT.?"$I^4PL886W02123_[+E:UW<3Z#-[&]SYY/R+J:7,4NC_
M_^Q]:7/;QI;H7T%EDBG[/9+!2A+VO%0IDNRK>RW)D>1DG"^N!M 089,  X"2
MZ5__SCG=C8T@1<JR15J<FNM0)-#KV=?6PO+?" %IQ!=1#NCNKU&>_()G.2P:
MW;.B[#BR\;(:\5H[^:XE\A?PN]P!U0,XB(/&-^]P1_OB^:IX_M7QAX%G.8'A
M^MV^;_&N/3" ,0>ZW;4"'NA\&/BVZVY?\?RT#53WM?35S/M:^C_D8O>U]%?9
M-TM2+\K"$[:_J[&P?7'XHC@\51>C3T<L%U]A5SJ-VM+M#VQ?37]?3?_QW0K<
M]MU0MX>FU^_; 1MXW!]Z@[X7PE>AX1O?OIK^61(+C?CXGQE(5B<QT-@998X_
MR3B_8')Z]8?^_@L^Z\]/O_P!<_T;M.)W7]Y_//@"6BN,=VJ='_GZ0B-+\_WG
MLZ.+CRB3GWV!>8]@G@EHQ5?8!//T,_S/.OWBVV=?+MH*[ \'.H "AL 8S 5E
M& 1VQDR[&P[[OF,..!L.^S_]9G8 ZIY8\>AO2T%^&"?#4RRO?S_R^7 ^AD6:
M"8IF>C5BDJ9F0%UO*,ZH86,DX0SELJ)1\)Y^;D8_%TJ\]@>>;YE.MS\(S:[M
M^&[7]4*_:PZP.XGE>W;@8M20\<VSG+>,?-[#_;"OO;^OO?\UL3*69SG,-?NN
M:=NVY;NVX[EV7]>MP/:8;7S'DF=W$NAZ#>Z]A/M@%'JQ%(4=#DS3<OO=D#MZ
MUPX"UAV&?:\[]'W7U7UF>T/GI]]LO:-_O8B[Q=6/GAB%6!$@\G5DXCM*<2L+
M]>]%N:\E% O9('W/-UW/Z=H6 T(Q\ /,=K.Z_:!O.8%EN5QG5(_V1R83^VK]
MZQ$>D<;QQ!**-ZQ!NTL"F;C/O4#VX'1VL?J_8P)MM8V@:YD6J,Q]R^XR!RCN
ML!^Z0\\WN.][)) -6P2R?0. K:4./[0L5J</>UGL@6E$4Q8+'>;9#"MCV4 >
M[+[/NIX3&%U[R#U]P'S3<$@6<_:9N?N"M0]3L+9=*-\2(?1[%:RM9SHNB0=_
MPN5L/2OT^J[K\"#4[9 %GJX;@WXXL%U3'PP<^]OGX^T=YX_ H<X6'>=PQ4'?
M<YSNP++UKLU\NSL<6*SKN&Q@>T.7 T0 A^KT'\RJ^!!(^<AFAD>C.UMG/UC?
MW?Z01[.CI'BY G$_>KSWQ/\ !'FAK*[-F3OHN]VAXUKHYPFZGJFS+N>&SIU!
M& QMZV$\\3\./;Y']8OV[?Y0:8+WLDKLJ_+N-CEIE@/2PZ'%68B-VUV_:P\&
M=M?EW.L.N.,&]A (2G^X=CF@C177U6E_^"U";!3/"*Y$^AS=LL4M!QABT#<"
MUPZ'ML>]@3TP[= )AP9SK \#_:=*SIU OM\HU'RSA+SOK.]2JM;9^=6Q9N@]
MM=+'2!?3OL_D[0?PC=,@@59-HISDF(,X."0(N^:Q'_'L*,K\<9+-TFU);+1.
M"[KR:O(W4(?SUW]\.7O]A_,>Z<75. *Z<?OWU1\6T 'K_<=WSMG1IX7$QE.B
M0Z?VWT>G^M]'XQ'0B-'Y7R= -WX?PQJMOS\&T=G5)QWV$)Y^//X"6E\X]!S+
M[GH#UN_:_G#8'=J&@PG$7J ')O=!Z],D;@+-1FH,8@DW0L,+'<>W^U;?X\-@
MP.%&^OXPT+U^,POR\/ST].3J]/CLZE([.#O2#L_/KD[.7A^?'9X<7RZE-H2T
M#;H@+NC.^;<3V=_.4G\$[%&K0.4VD:@EV:09II$6UC@A62J37$>[Y=J(!1J;
M3M/D,V@C.1_/M9]7*3X/4MZDZS1179WNN0>R& '+>M:B_A/#^O,K_X/C]P?N
MT/*[#'AI%R1"K\N&1K_;9Q8#,6'@.WT+G1'+##T 9F/"QKB6-CQ5 .Z7 $Y9
MPQ&HC'&>I/,.PM+M*/)'&\%(X#I#/H3%#4+7]IW &PP#SPQ ';8\G8=,< *0
M@P4G:,:I+P++FR2^1AE3 4V)D0<3T!3R/>BT@<[9U1_.V9=WQOG1L7YZY8/H
M98<!'^B\:\$] !QAPVMK..AZAF6:EN>9 Q>(L=X;W@5'6:W>?3:*I@A;F&P>
M)K,T'VG_S%B:\Q3!A]++L43^1E1&MPS?=FS7<)G-!Z[7Y[IK8"VR<. 'S"0(
MLA0$67L(^@X0]/'@\P>&=10 7+K.( !*Y'E8Q*3/NJ:CVX[K<3;L$P297P%!
M49KE#0"R"( \/D_BH%?GP5^EBE@_K<7*50D#LJ4\MO9A]+1O+(63"?$D!J[
M00JGO[!6<)SQ+13"YPHC/@'D^^;9Y(_Y^X^O\%GC[ZNS$6"#\?ZOT\]G'X]U
M@.HY*-M1$R/.KP#RO[PW_S[Z=W1*Z_IS?&J^ FSX<_3^R[$)6&6<7\'WK_\-
M0KAOGMY^" R7>[;#N\"6,6L1R.G0,/TN-W3+,G4=>]TNB.$^_,0LA_F.:X,
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
MQ_Q4T&8!,A%0ET)F+),6:\ ).JNEAT/F]NV^;3'F@>SI&JSOA<&0<UV4VER
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
MT>F'_A!T;,?SNH-!W^_:NNEU/0M$+0;*E]T?!J!J ]\T5_+-9P@WR,Q,_:6
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
MW Q<ZG@L]A?0/7;0A84 37"/5 !5*EEA+[X6,>,@.]$KDKJ7PIFTSOD)R!?
M6U+@ (I+'I[_>7+4-=R24Z(8.8G\'2#N4KG$/EX)]08#NB5I/!#:G_6>6^N/
M21$<AOU+I]X4LTK*%185%[GL$:,6%5DHRTWB0:=>\GAQEW1C=.^S>(HUH?V<
M!.HJK*+*,V;SK ;SI20W"ZZY@GT!*&A22'-)T6HR!L4@9%5FI,P-B& S:E2!
M>!FC+)B6%7>0%D^%/)3EV%D4H#7UZ$59/U%".55L5* G/582JDIH0B&5A!4/
M6YD59T)C5<9111M!$!6E(-DU* B@?=QPX2DB3LQE:(.\QT)(D8(+J@[HC_51
M)A3*).)#<7R"\-1$P1)R0,B/0)[UL[(*9:YH(4&CC&P66" TQQ+=A=D&)I,0
M*=LWB "-:B0TAB+-)C-Q$=A=QX^*LJUJ.*%5,?3(5-\,DID'Z_&264[[4JP9
M6]8IRD\AR:+''=ULNJK&P0Z@^E4;4*E 8G'1&(?=D>K9O,8#\?0[C29%R#T3
M'(,"L&5[0:5UH5=+W&S&;DL1#'Y-,9$'Y8VHQN<$ZM;("D!X6*9.E(;'#/X;
M)+>"&Q1]_$2I:"K7&U0(MQQ1:( ^@""HB<!T5</"E:)[)K(2!2%![4!P;=#_
MI.61G);2B2?%6K'_Y6@L4(&B,X)% T VRU"D1#([!9HQ14ZZJ(8V.)LD9H+;
M D[ 5/X<**.L)XN2"MU$RB>D,3%4-&>4.-"0)\0E5$EOA363PHHJ;5U;K1UW
M3WL]3CP<J4H_23<LB$*%FA-2AV@U09VO0AYK5[P@L=3I#AUXJ;LA2>F4K>(7
M9>^"*BNI4%()T;J*:(":L. $2-_1B$3MDY8C^]/SL9G?)*9\!]UE[>=3X6P(
M6"  17G14DT0RF5THBF"=@I(S!H(I3J<*>4M4>837E'OB%\*&=KCI!M0WS49
M=@%?<T7!2H%C#5PF11.)C%!BQ*:(OY,I2B&A5"]J1A7"8=1//M'1D-]$@RL;
MB21.,F=CQH? W[&06X @*I>/5)C0A$BX2;0B\9#D"::MGNZA!R:=30L-XEKL
MJ]Q&S//;)/TD]D"J27TCE3G(HE"*"X5U?#R7S"3+NT*4$WUU<TS/) =-:0Q#
MT1B'I>9G7>2_\\KEHA8U*RS <VF&*!BO5'B"65K8#BC*+Q:R2I7_HHT"-@AT
MLF &/>T4;<7$[ (T"_ [!4\IJI$1+B530F<Y9*)]<A$PX5C0NU>1'E"FE"M%
M:WNAADCQG_B52)'$=LI5N0QCD-7A"IF@0ZU#LJQT0W[A#;WN+F0C0I\+1R(+
MZ&99\!$V*):77K-8VFK(]8BFE1F*$B4+Z=!*"X7"%ZV62[ZR Q+B[[P,&@5&
M)/,8:J(T!WD )4% 7+C%.,FE(@WX.=<XW#JVV: !X!;%'W<=O01W)4!VVAW$
M'8I^T4*X;G'&I4E!<<V>]J9QW\MANB9!5&Q@BD36R*)P)G<D$(LS4D)+4*$L
M<B<5K[:RI56^4O;&-<@ZT(58?=V&0!*!\1.A, T<HP&4SD#12/%7BFESI,7"
M T@@X=,X^F<6!4HN*@^8L.\6Z884&=DUFI<8U9>M(D-#;IHFU*<)K59I526]
M!<XOR\'+Y$0_30KUH>*UD0*X>(BCLC;ATB]7-^R)0RG8'!H^&^XYJ7/>HKH,
MIWO#9=XE4:1JW[[K-+E%UTG5L+<#R'I"S5,)<T0C^R(F<I+@4<KLFQ'1=]B9
M[!]?<'W9YZW1'0+'6XP$P!;V:' I?$QULP6-#M=/F;EB:+-I :^XGP5@,F!)
MU+06[TY<N_);E9R2DH6DFG(<D[_[FP3_]'O.&H?>(M)CR$+7HK<!%P%MV5B*
MY1[+2%L Q?M4^TXA2^V0,DUN>4H-A$L7.BP?W:AU7]Z,=-L8 _#1CC5?ZOK.
MBH"<3.!>Z5 ;XV25YJ]A])D'TOZE',S2"!"@6(6-#U.R*%=C>43B >CL@4]9
M!PNN=FFZ5Q8"%>I2>B,$,T:->A2%N9"]R?L+++T0SS3"9.S:&:8B.[S*SXD
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
M[[(R[^6(8RH7+719LJ&&-1FJA31G%6_TBMN#4T5X1J?D9PK.!N@%Z:W0"':
M?IY+B5N<B&DL+5,NFJ85J,1:2Y4OT_+>JM?6*6&N'0H8Z&AOWAP6CMO:(V5J
M^,KRH0M%SY/&3&RA]: $JC99KW'/9D6 7^,,RCY6A9#7<E!8@U8N5NE/A?Q)
MWQ<6$D$0#*<TU) "5!N2D'T)ERF--[66]&TU6LFO!O)*!7-_KDZ,F-6\'1)Q
M\[*56D&.=@ G5EW0$D%\$8?LK9#$&T)L6ZE]DD-2/HEP,0*'0'MQ?JF&8HK\
MX2SZK$H.X-9@&Y3*0>!!>CRL1$8=B\AY%7B<LA*S%H>B,+%)) T2COY+D8+5
M=@"_%Z&0<$RJ!I]6T*WZ#O&$9,'@&F$H:P<+D>!GTZS#\ZH3HZ2]N8;5>N.
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
M[:L7[L&6$#QHR#29IA'/T4:TSY.Y=S _!_9\S6-_KF&EN=FT1)MLG@'Q$I<
M<A/P-Z*M,G@6$(4+'G$+ D?MED9\/!55+1:K["!QGPDC'/IG,R&(4$I@2K)4
MJ>J*>7: 5E:H4RO]0E/B=2IZ5I=BF,(!8A:*9B'UJ1$QA1?B,K*"- G&Y<W5
MP9-.CY;2$+%)>.ZX#RJU1@)TJDTP5;.+>?$Q5Y<AJ3$PMQ$PJQS+E0'1^\3G
MFH+8K$S.+.M$=>"&V3@?^2P%<9V/01B6'V%I9"WMR+47ER^H;0#B(.:!"I_6
MF/Q'G'9!*RR"LH'KI!11XC.@RX RF?)%2BU ;6,*<DD,@LDHFC9R2U'*0<B6
M]#^;38JP;X!!H.,[ %<';>*BVU'BXF6>^)]&"1Y_AE\9@Y?:\3\SU-HJLB.A
M;\K(F=>(#+8J*HV4O^%W'_ ZTV93J6F!@C4CL[<L985&?YR8;H3B;TD7^TND
MX&>BHAY<CA  BXRN\LFW0!A04G@[9CX7X 0ZK_Z5*U%!!4):N6LU]:=;5D1B
M3/VT[*I&NO$:[S@60]Z<=AZ&5(</U+>VVQ\4MW_$O5Q>,Q4D*I4P(:8= ',<
ME]Z=XD\1:)%X.0-X"^K;H+P>+XV":UZ1WMKJ73AEJ@1F)]7R(K @2ODS.C1Q
MUR"IS3&PG&KG-)<C,)L+(Z:7I))8^@RD,BI3A\93KO+_0-U(QC=E5+I*$X_:
M5,?'$I\7%,)8:D= E(G(5;5"Z<5=*G,W2L^M1*8UX+NP%R\%/\$18/T\OH8'
M8ZEL*A=W-N(\%Y)=_0KFY9T55G1B5$V@JL% '4+-3K$^,C]+ ,$:+<(7B%)"
M,]2,K-7/0(T0>&(8!:((Q[^(SE9T$:60 $3':)P][X@ #0;'"_@&S$86^D%_
M'XHJJ-V$H0+A@JWFE$^F]!G4G@O5E)A/B&Y1]!_,R9^9^*B?POW!.?N?8!RA
M]_!8^C-A01X6Z?31[8EZ2%"Z?<=HF!$<VY_[5/U$%LPBACH7=XYB&)RL<BN0
MH"&*,*1937&23)/JAB(=FF4=F<>1RN@# H"(O 88>" .) 5>#(1.R7%(*JJZ
M4D=R5RF9E)8?68$TRJI;$#.6=265)E8D"%8,=?59\(8BT-T9E7Z83$%B$!+'
M-*&HKT+2K!1E%5&#!*U%S$9A^J*78Y0/1*A%SM-T-BVM-X2T]90R*J=:*8QZ
M/4X\8653@(M7UH61)EI12K59K&RA9*K .92)*WM$WU-$*7LC21[K,;T(EL*Z
M@C!=W6(A$Q3R9,IS4=E'U:'49G!@8X)-6(2/AAR@5C&!"YF/8M#$T$J)>C9>
M+)D(A28?4B&0I03WCLB0I^<X<I<[CA[!!?1( FW-(BVPIHY)9+=)KE$C\C,2
MW %%HUC&9P@44FI460-J.DOA]8R45JG2=!J&)1&PAGF@:<ZN1>B<] ",134$
M$#!B)#"(N@#?E6+*2&Y)7A+*1/FHPO;U22_&KQ3D=3PO"$RW8#$54B?J 0J>
MJWRVS<H(D=*CBD =RF1N*7,&H_2THR@KB%M!N"HG#N+@;9)^$L<M"AW6SKQR
M*D1^2N,HQR2]B!/%6MP5? D7$V=H#B[-:T7I1S(S=Y$QS>LGAS^&A5^E8G4G
ML7'!\H"&:"X2?0$FLAG>_UB8NK$B-H4AJ2+'&8SM2WLM6LAAOP&P.Q24PL+_
M")-5'I.L'RMD9YGB8&3*R6JL4ED!A(R0>!_%(62E&Z^C>2#EH6! P53T6D=&
M!Z#@@=7YEQ)/6;Z_BTT>7EA]U?D!Q $X_A==8_AH&BO)5_U'-&B]K)V-8:/Y
M[:??2NPM!5#!AU-6B!G /N,D[E:_0CS*<E%EBDTC\M"FURR623291L&$<#-1
M, -D>;D\Y'M_9?>_,HFOA>"$XITBLS4=&P4@$=(LE!D2\KV<*O"G,[S&[&6U
M>,HZ 1'[B[OWQ='9EPA'NL:82^T"1.-,"+S"3SE.,F02$Y;[PD?IS;*(&.HD
M";@P("H<1,OS-FGZN'Z8V!,1!AEZ6T4<..Q.<2EQ+ 4P)^3%YU.9?X>G058<
MI@2#D&4C5:\2A@&)J:>=%T=;T8[4B,@&X5=@1%'VJ=H<8L]''@RV*\<N24P)
MWDK1!R@HY4J0!4"G1 (%#",3*M-<73>*.Y$_&[.4HD-D(2L934"Q(M3H)/);
MJ9VT4<9SM12T]:(0(^=%2R0*MK-Q(*6VI.[GCL:S7$52J]FRBDFY]*)3-R!<
M<,I# ':JYBH[M-R A(K2=,;C"-WVR<(ZE]?&W(/?AN"'$:)9R>6:O(U D"Y,
M4%>XHE^3M RAJ_AR"AL"*DL=8:F,A/KA)Z [,%)OX$TLBBPJVK <1.2L(SQ,
M$N8##OL,E,5'>JH28:"5F0-%Q'ZFZG<PLBOD-?J75!.*I!W#2UA*^4<!B-5D
M:]@S[V\-857*@Z;)-!&-8:312S%@:>FC:Y=F-EZ'*8*>B4<NAB+L2+U>4>L[
M!+08VH33S)0+@A.3DZ A66>AG=7EBAWPXYV$BCC/8K4I6#\EM "FLI@4#% 9
MPXKF*8K>I)04@V>D(KJ""'_ N+/JT93B0.FV:>,Z57%"+"L$7E492D2R256V
M=5SB(QD]7)/3/![B^AIL:"H#;(0)$=$YE6E B/2<BR"K<MLDVY7*/0494*3/
MF,V!?OF,+")"V.>H.\<($C@&>M@!T-#.T19JU@B6DU6#D<4!<Z38Q$Y1Q4#F
M]!+OE'%D9>7R &DBESX!Y5U7I]"!69%0XK[)[R6)8[@8T=S3#K0Q[21LE^=P
M=N&]%7&&A=5_S9 T&;0)6Q=>C P]2/"+ )DL0PQ&%2G*BE&$*(!^D>IQ24MX
MI]KXJR.5XZ1L J5R'J7, 0(]?AUAVG<>I;RB3>\ SA["IJ- >$E@-2.,@81M
MY*)L'AXM?#%6?T<QQBQ)7T(C,E'%+(D8"_*S(&$L['44RT1 VV*):EJM.DH_
M2'FW:HJ@Z$;)Y!4!+V%.F<L[(&,":@>E6:M3*\45"!# C?K1M"C)*N^7:CMC
M'G]G/2LD_^R+4A'MQLA.!56KOE )YEC*GZ6^B(^OS-<IJKLV%R'</J+>N(PD
MZ33?QJ65CJ+V,)(H+,Z_]/<%'0G7PH1+.$6,#>.Q2WP49\Z;V*-B?8ICS&_Y
M^*8(HQ9K!NT73N&:">?B P2E[@":G<?:P>P:V(EF6IUJ;+$,!6/:;1KE<%\H
M,J(F] R/1GIVS^BKHI@#B0YG+ O8/]+UE6EO9&S5'XBLH4QGI;30,*R-=8G?
M%$,5N*IH6B2R4D6[R.F86EJ441R281* D2P;Q8+(:NBYF\PF9-\@4A(%I4J'
M345U% &T;$3Q4^CZ*Q)J,>2#-E-LXF(&S,]Q'/T9>_[,?%Y;_^\P\%L:^*)<
MC-I/AXI3S 1!;E_+@C'MEF+ST ?>6"8IC)9.4ARB!M*_0@@(V%Q6EA*7 Y#+
MY=$)]R<Y1^5^6FUXL7A;[/Q02HRG(G"++@6N FE@;1:)E %=G#"D^)CO5EY3
MZU$.#?V9__R9]?S9P?-.(V\_$]*9;"MH#&'##*U7V,T+-EF:(P,20(36+I9#
M1AOA6GW%O72&$:JF"/T&("<W!>4#MH%2ZSWVM**2"I82HU5U6JZLZ0X1M4]7
M'6DE:B%?;<BJG@Y-Y)5"WHK]I'C06/* C& XQVV48?I)&RX)O58N5$&)#P0
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
MU6!/AMW23HXXUC!6L5%'/,2*<(U-F(*0(2BO5B;$"56@M0W,:T-+T>+.H7<
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
ME[)7Q)QM<2OFJ,4N$\E-8Q=QMA*LVP[?=HMC&2,M6)F :!JL=B^,>7D'\B9
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
M")EGC7SM E*3C0EM!T?!GF'[.WA((AQC\->4H7GL$N@VB"N2F]#6[)HA-W@
ME F8NLXW(F8C!*O_F";V@32SU58L3>B3;\CSPL'Y.PT8:._?06<Q%P-&YGB(
M=(.[,KD);5WME$NO1<F*;H[D"J0G=U6@<!FNP\+4 'N\KRD-1&++^<I73:6:
M6+2>S@20TZ&>WAOAA7-73LD=M, 1%PXHO\_A\5WSI78D#WHAYJ0_H+ $3YL%
M\G[R:'\6A__>4K;^GD&DDO!LB!?QD>YBT_(=)!D;!"YH:VA/4_>?&+':';5!
M_$XV6DQ4)=P173&P>:> )MJAH3)A<!=/O]\8L);)-0VF[@2MJ7-V^ T K *6
M*ACSY#Y' 7L8I\$\4$G7X (S;!-4FN_1A%7S</#[#N=,$D1Z0T/FD#YB:&#3
MG(J*[$S5&LW]=%&J_I@F/KZK#YIOQ]20T/EU=('"&+V%NUYKI"GG?9C9E]%-
MXGQ F:Q [P415?.>"WYL3V;OV:J>8/,-^Z/0^3D]/[DG<Q(FEY<%<SY$NJ&;
M..E0UH#A1;B7#'_-23#7[4M4)3<B,RUO$V6,V1SF8!4XIR+,_8<ZU=J(*>3Q
MXZV/<,<X/7/>R?Q=F%RE1WCCJF#>BW(/2[;F:G$Q89>IV,!0R3K2'XALZ@8V
M2I:%J8L.U-3&V.&WX%XE3U3?O,F@&,=.SW?B[6CU?A P<"FYM#A+YLQMV9K:
M77FC^P$\ZYFW3*3K-=FL+>%BQ-RXG:WV'VZ:)?*G5IY6;PK_4X>..2^U'ZH1
M&^N$KW:OH)K8#M3EAF@I6Q/G_%UA,"KU28/U&?WH[;%UACVH*I:?1.FE[PJ[
M\<B42).9_D%+EL?:?(P8\0VSDG:=Y63NK)!Q0'EZFHL'?G4/MI"!L;-#VKZ'
M^?S?8.B-:4[:R0-Z(_-@WIO+W*.*_D(-?H:Z3RL;,?%!K=O06]0>$<PC^=%[
MRLEX5/-,UKI<?G2K-[S8S,&K._<:>X0+["B#%U8W)B^ABK)ZJCK'M=D:L4S<
M!M*"&2#V_?Z^7QZTSBUJ0J0ZOLS+2?HM\KR_U-+5?0#%$WEE>E.7LH>'AVKG
M=W(*F@!@LM_!=EAW?>*D"DPQ,1#*^8@+J;L+*GFR#3D;NWAO'F^N=QC:)/Q+
MMDE #"^&5T]HJ&$1VX:K"+XZ_0(FI-K>G<I5 W3GFC"PG^),Z)ZZ;,L.CPUL
M[AQJ_=<=2C)V1%384]IF/\K<!:!V6L%:*VSZ@ME2>K9">+O.7M"(,5:1DLM&
M(@"D6SXJ+4.U^)FJ<.JD5X/DU&(:$]:ALH]$:'(3*U":T$*E8>%56-?JR^E@
M%(7;62H?FL>:MXKTE\P%M3F]EQ^HY.WJ#%=J6V@W![<*6)JPCU9M+V/+K1!S
MI[&T"Y_<\X2E3CJ$*Z>^3SUI/S'D/2 ??LOR93VS \XFZ,?FFG[GKS9'4\F)
M);NL51F8JB/%^\1#]/H@D2-EA_NJDIN:]E5X,+-FQF-=-B:LEA4NE-SF,LH?
MOR*.*?5RC^:FFK)1R@1DPL]2QNE(T6;">DXMG99+Z8P(RCX\/-S?7%<.Z>64
M-0$CN?Q%;*5S"#.>]MA#*8D);7K$8B.DV*=03<95>F#XMR#J\Z@3,:;I?>+B
MO?7MN!KK1O\&G2JS+)_D6C\EL!!B.2?*5A3V12F-L2U-+&\-U+XJM0DC(&W8
MRD_C2*/V#P1F#-2LHCV<)?M08U?=3,WM&9ZCKS_]/U!+ P04    " !.0FI5
MF[77G;P9   1]P  %0   &5F;VDM,C R,C Y,S!?8V%L+GAM;.5=67,;1Y)^
M]Z_@:E\WK;H/Q]@3LF1-.$*V%)(\GGU"U)$E8@VBN3@D<7_]9H$$!9X"@6JR
M.7J1>(#=7V5^E969E97UM[]_/IH<?,39?-Q-?WS"OV=/#G":NCR>?OCQR1_O
M7X)[\O>?OOON;_\!\*^?W[XZ>-&EY1%.%P?/9Q@6F \^C1>'!W]FG/]U4&;=
MT<&?W>RO\<< \-/JCYYWQR>S\8?#Q8%@0ES^[>R'X 0641A@1@<J2P&N: <E
M<!>353+(\%\??M .62I,@PU6@8I.00P.(6:3I31!%<%7#YV,IW_]4/^)88X'
M-+CI?/7MCT\.%XOC'YX^_?3IT_>?XVSR?3?[\%0P)I^N/_WD[..?KWS^DUQ]
MFGOOGZY^>_[1^?BZ#])C^=-__?;J73K$HP#CZ7P1IJF^8#[^8;[ZX:LNA<5*
MYE_%=7#C)^IWL/X8U!\!%R#Y]Y_G^<E/WQT<G(ICUDWP+9:#^O\?;W^]\$J<
MXNS#22&MSL?3]'WJCI[6CSU]WDTS3N>8Z8MY-QGGJNR?PZ2.X]TAXF).HUD]
M?7%RC#\^F8^/CB>X_MGA#,N/3[!T8ZAJ9UZRBND_MWCJTR^X4YBDY60EIE?T
M_=FS*[Q>AH"?%TA_<2JY-89)ERY\:%+UULW6?SD)$2>KGXZ6<_@0PO'HV7Q.
MCWZ^G,UHFHQ8D#9E$4$7%T$%XR&8',!9I4N(VL84+TJMCFQ.0UNINH1Y7.G[
M[.E/JSB?XF0Q7_]D)>"5<*\%<"K//4:34K><+N9O,2%-W#C!WW&Q'ER@Z<E8
M=A"E8S1Y10'O@H7(G#&>,69$:3VX6_!<'.L&>Y[-TD$WRS@C"_?DX!-6>W1F
M[$[!A5FZ0JN+4^WL$T_GRZ.CU3-AO,"C]=]7R]>*!8NN)PV<JIP&LB\GGH?Y
MX;-IKO_]\K]+PC0A*/-GB^=A-CNAA>.?8;+$$<K""I<1!+<!E!(,O*(Q)Q,L
M0Z'12-V8'%L!VX8EXM&QI+U.FM'EU^E'PM+-3HBW(X%22Q,C&*5HC,9YHBYW
MD(M.BA%C#?+&K-A\_S;*EX].^3M+N)F.7^!Q-Q\3X2Z,26H;0D()(EM+8W(&
M?)$94K$IH$)DVC56]K5 MM&Z>G1:WU_FS=3_9H;'89Q_^7Q<'2ZR0Z\7ASB[
M!"P)%Z,+D"W7H!AY^E&1SV^=\T%[$ZUJ[0EM 6L;:NA'1XW6^FA&E%?C$,>3
M\6*,\Y$.TC,=%4BI!2C.$C@G- 2T.F;DO-C<F! ;KV\XDK5$G3-6",6!Q$A!
M*L, T3I+,)3SRG/KFC/\*HHA.<&[:OLRG?>4=3/VOC[&&8U[^N$54L"]1G7R
M>S=-9[!L,4(K5T"&+ F;X#1IR<O2VF<N(KJB56,*?!74D!S>5HQHJXEVYJV;
M?GB/LZ/?NP7.WX23&JV-%/%4:V[)(2NICE.!DX%#-"X;QV-QS0.AZW ,R?5M
M9ACVE7<?"]O:1'%;5 JR@+%("[AT$H)""R$99KF/CF5YS\O!#K%^-UW,0EK\
M.5X</E_.%]T1SLZGVWJD9'XC#TR $!Q!)<G >>8@I<P5>L>X-:U#_2UP#70I
MW(4?5\+]UFII-A&>I31;8GX7)C32[NAH/*];"VM(.EEEI50@/*_Y*N5HN$H"
MHUF)1421,+3/&-X,:*!K8PN*M%-$,VYLFNDU$!^$$5'1F*RF>-5* TZ0W?8I
MI,A]\8FW3@A= V.@BV,+'NPK]&;:?SF>UJV7BQ[;N:WR]$XI ]@0,KEKR4(4
M%/)&'X-T2AG#66,:W(9G2!FCQGQHIH:&OM,4YZ_+\QGF\?G.1I)DF#0M63((
MHF@D=CHK$)(15GL6D\+6>TO7X1A2?J@Q$?86>]]Q]1J3L,9F\MYI5(5B_1(4
M!)8SH/+95K1&W%-0?0=2F,=)BH:J:.U2_G)T/.E.$'_&*9;QET1FYL8KZSWY
M+M& 4LZ!MXQ#*8(\'.>\E:D?G_(&1-O0PSY.>C1413-ZO%N$:0ZS_&;6Y26%
M1&$V"]/%R0IJF)P;-EK&C+(%4'A'P5#V$$2*("(RCSFC4ZVC\:V ;4,6]SC)
MTEXQ+4W*JJCBDE^,0F9R<0QH3LZQ8K6<0A9/J(*0Q-Z470^FY!HDV[#"/TY6
M-!!]ZY6%"%IP%1Z'R4O\,DPE,7AF"F165[OL-43+$ 12K,R#UIRUWJ&Z'=%6
M&2WV:'G12A?M'-/5MNDIL&N&FS$IRS2"(>>'AILHC/84/&7C#":GC6I>S'([
MHJWX\4A3G@UUT4M"ZRU.:H'IFS!;P9H$(G$98][(N 4=3 1.A 7E.!*!2R0!
MR)0$15=!M38F=X"W%7,>:2:T+RTU]&"[]-=A-R$ISVOUWN)DA ZS+B& #[6,
M1UH&/GOZ2KN$A4FF3>M\V%44#<J""I)<\^K1IR6(- ^E5$R"<$6#BKH6_ N$
M'(O(@6)+IEKO%5T#8TA;0WMJ_YK:G[V$WJY,N#LZZJ:;*#R+6ID$1M7]**$U
M!*O(Q=.VT#Q6083F%<&7, QIOZ>QWO<2=SN/.N?Q8N6\O0GC_.OT>3@>+RC8
M^P)NY 0+R*V XG@F$XL%7/TJ4K 7BRDFN^9>]5=1#6D#J#$Q&JND9?"U/%JN
MEN.5;T> CF=XB-/Y^"/^.DW=$;[JYO/?<?&ZO ^?1XX6X! UQ856T-(L(RW-
M+@M 'UFR/(B26J>![PAQ2+M&K4G4H[*:,>HM+L)XBOF7,)N.IQ_F&Z!?8!FG
M<4TSN,3)*H(T) AR*3DX91286C*?&'JRCHU)]'540]ID:LR;QBII9WQ6M="C
MK (7)9"E4Y;62.85U% "K$TB,0HZI&Z>\%N]>7_7NCO&V>+DS21,%\^FN:KJ
MN![,I:\W=WC?5LJ\+G_,<?7>9V6Q"J*_Z(!F<1J?DFV:GQUU%!?]W^K;D2HI
M9N<R,*[):Y"9IK!2 DC?LI!#60^:-/?4^Q[5D!S_'3AXU=D?% T:3\]U4&YL
M4H8A!Q\-!P*D(28D,)9)&Q2+ >_Q$.T0C@SN19K=A=O3CO\E=HYR%-+7DMWL
M1 *%D4-(O@":(F)0D6?;^MS8K8"&%!PTT'\[X?=1/DWVYQH?)&CA568:DEN=
M][#DC11%T)A6B0DGO&U?#G0[II9GH7(FAUB3)K.-D0(PYR%P5F@F&H%"%N%8
MZ[K8&\]"#:90>G\FW'*0Z$XB[S/3&Y"\:Q4%B%3=7^:0YILL]&W!8#-S6=YW
MIG<P==#M&;"G BX1X6]/+\OK%7W?0^>5=POZM_IU\ZZ<F6_Z[454>[1@N>'Q
M/?=BV690C9JR_&/6S>=U:YGB3>Y34)Q;L,YG4$J2ZQ-* HTQ"2&MBKFUK=UX
M_?XYCH\X79+]<IF ^EJIF<EE4YJ,&+EJGMQTE7EV5JGF%=/K=P]IO=A5LU<3
M%3O(M>%>R9Q\L']T75[9/)Q]'"><OR,[-=)<FI*#A>"M)*]<6/+TK* QBI1R
MXCRJUGJ^&<T=UPEX%*IO)/QV506X^))1'3DFHL^8P$M9:RJYA%B8 L'K;[)(
M68C6=0.; )K4T/S>3;MUU''ZZ!&RQ!.%*1"%911G, \Q>@.16TFZ##'IUMM
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
M8__G^8>W/[V<I=,3G"Y_>C%'6&+^Z;?Q\LM/_\BX^.=/93X[^>D?L_D_Q]^
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
M51I:-W \#%WN2<LZ+%NVT<( +.E<H/.NWK_B\OQ %$7S:+QA2A5=ITW47%4
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
M-4E'LL=YYE[1F8"@!1?)HMRMO. N4#NF,$Q@L7A7NLO-RT"NY FC+IG95(?
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
MLUXZVLCI.Z.[/GC'Z!:Y3._*M<_^?NE&J2A=%E$QCEX0.8QD7I$;1?N$#'0
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
MKN)9O1X]$.W!E'B$]L/.^KN#)CL(?V ;8I6P96W 0'B<UX*0I<+H:\\"#Z#
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
M/'#%;%8RV>Q*\:T;Y^V=&/>8E_OGQ39";]X\:XZO3VOB_"K>N#H!"^A0P#-
M+9A.63/(.3'CG56.)W#K'10WWCC=^H#]FQ3--#!K++X!LI?/T9R#X<Z'S,DC
M$KRF2ZAB&"3#F1'2I>A-2KEU\=DU $]?U[O+]5'4%8FSKU9)-D.4$6UXQ/!5
M0WW6ME8DE%!+;E"10>\U<-K&E5+<<6^5#!'%YB*A#0\[>$T0"LXM*MIVLB=N
M2U%[.V)B!2!)R,KKU'P$W=.J"?*>"\5#84%8VIC)1V21MF/R[+E-Q8B@PQ\U
M00.R;J>:H&V4M\^:(&TS1IZ!H<_R[*[-2^N9]$[5_U>Y_63@8ZH):D2@ARME
M@):T]V=;"Z"5DA?! I+EH 420)\$"\"+3*+$X'@_$_M8L]T?PHMAY-\P3C-0
M3C3WA?S/+!A//#!M?601?&%%QV"0EQQPN_SC'SO;?6?J'4:S Y;M7,O##L8;
M*!@)1"ZUG"TQ'[1EG.L4,)'WLSX'[@?(=F^Q73U8R@WK<7HE5)N4P1B16"QD
M@6G-$X/:M</HX+!(A<*TK@T\NFSW7>R>9LII7B"S<\YT0>U22IP)(9$LM_^_
MO2]K;N-8UGR?_Y(1M2\O$Z'CY8PG?"V'+/O&/#&R-HES*, #@+I']]=/%@B*
M&T!V U4-< D[&"1!=6=E?E65>XI:AN81K&8I)J:LX</RD5]GMOO^Q]"DDNM0
MGM,N,JA+0I.=!L/KB'*5+2!GDA@96>;&&A??DE2/;/@=1=BGGZ1*FRR8$"1$
MIAFIBT)#X)*^LR99'5VRJG49V@M.4AV%C<%)JF-D=)QTPR$4OB6I[B/.\7F'
M^\CB.*AQ2@E3QV9@(5M%%=) ,6*=&$F:F8UD[OI7GZ3:&2QC1-#:[5EG3YVO
M+BLU>/'+[&M>TA]O@J6N!*9"'4T9O2)J4@1O?*P.?$XD9QWO]\W:H=0_\I*3
MS%,<)9!Y!VY..6_K8<3T]\5F?L#ZHZ8AY^V/[AAJ'K"6>R'F(@,3V5KMC5/.
MYI!E28P5+2264,*6$//VEQP]M.PL*CJ<) AEZK'E$+R2ADP[S8775L;V1_O1
M0LOK_4?V[3V+^(<Y[<)%/?^K35R_7YV3DEC'[GV<WY7;63 )(^,(HM3"[X(!
M$)6EO5J*52Q@L&70>7<0&<_2@3$&:G=.S.DDUGWN_2UB;]:P#G#R,V>8U8SN
M$<5*G>!I'/@B!<3@I;5<QE#:#\492-RK 5Q?L?50WZ_=Q#G]>%E##+_GQ?D\
M765;_);_:_T1J:<E1">% I^#KHU22*F0F4-Q+M(N\$JQU/J<'T39JT-6!X%U
M*#=XE,H=Q^]-O\PSKI5&)R5PHP4HKP,X3ZSRK$1G"QE*]WW]?>'V),5O,.PG
MX [SOVX1=?>ZOYUE]N??\]G-2LXX)N&X2L!])#LM>E($0K6P? B.^\RD;YTO
MO0>9KPZ(O479(X*^A<[-Y(O_SNG,ISH/+TK022+M#6EKA:F 8KV0@70"IUKW
M$G^<HE>'J88":AA'OT'\][CK[[AXOU@/.DE_X<7E39HC^NB"EAZBKCDBRBH(
M C-(KIWF3 J76Z=\#R#KU0&IM:@:1L>O8OMY$6G%^*FZ*^D")YC?Q?Y/%^>?
MZM'Z<?[7?)7/HA$2I>!T4OJ::NT"W=BU<[F43M<C56,<EH,Q[L6O!CC=I=*P
MBV7[L*I0+"?E-/ HZ& 5H8"/="_+2%>T94A*8VL7QFO,KSA([S^*L$\EO^+7
M^>S3*B^^K#V%]&_6H;M$9[;)N0[/MJ6FJ^2:B<L@6!>(SU8YWGKDTC8ZGG]6
MQ2A$S!M+IH-O[3Y-F]#?$*HZ)5%LI^@XB1.'2^P)"!S [NG $+-C/+ ,>>T#
M#JY:H3R +#DZXS%(T]JK,"4(GLB'F H#8[C<H[?&W1C3)EJO@U6HN ''D=2V
M)!Q=PUK2EZ!<229ZV_K>V$K(],IU"RGM=@/MR>)>LU_K)7<5PZ^WXGQ6[\$U
MSATIYY&5 +$.+% !$S@F&4B1>):2[CO9>C[\HP2];@6BG:PZA%/NT72=0S2
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
MMT=.K!7U.IB<-*\5?B)CG$=3O+90N_2!*HG306@-L$Q$2B:2L*TGE0RG[F5
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
M"P29&@%MJ0(>ET I [[\]/ 3T J!5B.@50*53OJA;:UL\CE>,'P&9U\C#<K
MI';I>/0Y3;MD8&S29XXS0&,EQ1QJXECFM[P<U.ZLE1>T/V(NRLM1V,TPZ:"]
M@<I2V"< GR5)B%C ?,AYQ"!"D80$Q10F?A(@09#?KP+K *(:S?/QB[<>*S61
M+9HK/*[+3/088$,_[QN-UY_O"OC16A$CEH+H/Q!C57OH(>&T"CKTA]BZ9L,%
M7?78)/U-;;)T&N3;A6KX:_9-+(3ZAWPG:#GS/<9C&E#(:8PA8E1 $E &B>?'
M*4XE3UEDL1"<ZV^B;*XE!HH8Y$9>?:"GAH8]"?:[OB13-CG)U5^_YJ1V[EH8
MU%UC@!B)@LC', E#7R>C\R"6ZF_J_WX@_4@([K5C,#K\_U<CGR"*/"(1I*E4
MR"<,01RD'N1Q[*,08Q)@HTK33G ?<8M_"O6[.Y?H&NS0'6$VL"%1P=74'+Q=
M@"U1=<4"+:PCQ"RVSHZ0&VEK? &"=IM? U@Z-[==[X^W>3708F=S:O)\O\WG
MI\W]EEGJL91$,H0RP0%$,28P];F$">%)2"F/0H1LKB5OM6U%D"/<.W[4??2_
MW+.-FME.K"<6 Q/?)P, K/<Z1U1UM$?9;GG4O<41E?;W!,<><7$_[U2"INJ7
M.C63/Q-,ZCJCRLJAGIJW--6!?G$((TYQ$B64(&J5/]!6@*E9/WMW^*[ '_N9
M6/)U2K?ZEE_9E<S-S2"9T<20T _,)0=7 #L2Z55/.$ZAUQ>Z0>X)&G3_AC<'
MS<'IODMHT<[(KO%/V4)\+,5S,8L833%"*?0PD1#)R(<X"06,@YB@,/*P9:ZY
MRT6:&EUN7Z0Y[T;=NW!3973[3>L&*N5L;]-</L #>\)[#=O4'=]F(S:>E_L
MY+=V:F\$^G/XL \ =.:R/FS9CLJ+O-RD\/^;T"Z^EZ>,D7F5SS(5G@@\7T!&
ME<&*9)!"(M(4AA(%J=J/QCB1)NS<V<O4"'=;/JN<H-U8=A.A,X2&]L59@&-,
M4$;*=W&.:F"+;]2_-ES3W?8H]&&D7LL(9@\[S8&G:P(5NUFJ-JE#_5!!J:8\
M1P(K!E"F&8X8AZE @G$1\PA9W4VS%V%J]%"E;9-5X9DJ7#YK1=]*B6>9*+3'
MN)B95<.B/3#5G,F1MU9B*T?>(!E"^X,X;-J\+@&FD#[/ "##-'HF+?4XF-^D
M[A*\VA,7N_OGQLXJ9@%!L>\+!"7FB;X0D>H$$!'DB4 8,>DEH=$FU:K7J?'>
MQH'$]A@PW]*H]MC9!"$;CX+!>>80V [,<MLBUXZWW5+NM;.N%7P(7"U./8?
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
MBGE&(9HVG4[-?M^(#5JY02-X6_#1T,UF!;T!?P\ Z, ,;H)EG[R'IJ!:</@
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
M@R*B!40RUVO4 B4P(A&519Q*(C6_F*Q?NPG*>1-.9+)K*-R'T*0P5P=V_E]
MUI:.*,IR#&;!$Y$C7, BXZ::C2D;K1"'TNCHY1%.BBQR5_VY#=()%7]V,C^L
MT?ZY&<\4%23.*=)#7I%"Q%4!<:J1C6*2,#TNLAS'K@(_/M ,+^[SKBX2ZPU(
MJAB)4Y5!DA0Q1"CA$$>FKF3!%<HD221Q6H;<^)5/,&7X%N+[MEMHW 9.X&G
M,2YMV.W]=KLIV=.VC@O9KDU"K)>(V^N(^"S&=-S ]-68+CIXL1S3Y2O=EQ%O
MRXWD^Y-RE="4Z0\:ZD$],72)(>7U@"Y5DLI8XMQZK7#\Z+E]W9UU]M/_$ZBN
MS_'' Q#X"^X,\QC U>_O#9/TDP=.-A._[,CA=+OGBI$5BRZD3IK??=C*AVJA
M<GT3RC%,DT3/"%.L((T2"D7&42SB-,5VRW>KUN;VE1K#3(SS63Y?_0^UR8Z[
M@,-@VPW/WB ,_)W?A)Y[&2(;5'R5'QIL:]JR0S9NGY4;LKK)C4Z$+!?O5EO]
MI+J,$>7;\EF^I5O:Z@XMHD+&2F02QJ(@$"6,0YK'',8\2XA"BJ?,*IS[6D-S
M(Y'&5G!@+##6@M9<._ZXBNXP=?C$+#!KC(7+FC!LL;C %97D__9C_?P_]2,:
MFM _[-GAZH,G(09;]SI.L+Y^Y(X=76JJJ1<-GY[,;$7_Q:1K51^JZDF*#ZOO
M&[JJ3*OKU0*E*L&HD+ 0/(4HTZM\QK,49C12A I<".6VRG=H?&ZT86P_3WDK
MVY(.E6.ZFU,W6.X2! (W]/Y!BVMM^!UH3*]_41L/&NM-\=8#^SWN)(Q S=<>
M@TO3T^X^C #E;%]BS#-&<AK_*<63:>[+9OTH-]N7+_H5,\J*9D/DT9Q^?*_K
M'"M,,IGD"N8RTHNGG'"(51;#2+$D3Q1%B" G/K-L>&Y<UEE[!VI[&^WRSF+P
M1VVSXT+*N@\LR2P LH&)[#90W8G+$2%?I&7;[+2$Y0C&&5FYWC^2J P!'NW5
MZA:Z<B)&&/;%M%3ME="Y*@K*20190?4:3609Q D5,.&8%HP7/">1$V$Y&C W
MXKITV.#(4ZY=8,E7 8$-/0$[,'UW@&/(J_X'6-L/.@<""=>/A<\7J;DV/RVY
MC03GC.3&/F=L;$A3&>5R28[=+I3*9,IE#!-),$2L,*&LK(!2\4C$2<X2YE2Z
MTZK5N=%:7^4=U_-E&\!MCYP]PQC\%+HMP]-7>>?.WX;5*(R\G4O;M#GQ4;4#
M#.>GURXWCR[?LS%Q^V]E\^>'U6<]Q:/;<O7C#7TLMW2YRSI)."E(PO4L*^<(
M(A05D*5,PHC$/(LBF<2%DWBH?=-SHZ0W/_7?9&7V7=:=R8 VF2EF<K#<YSZ
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
M4])>M/M""W/C^;V-P!CIF+K8#^0P)WN!)S"5AD+&1=KZ1H2F$JP^1LJ7ZO2
M\\-:TI=NG% A>L#N8]WGH0M'1G3M.=5LJGY:K^C^-]_U3Q6M)5ZK-@ IRWF1
MDLPL^R.3NQ3K^3$S0JP""RYBE60H<HKQ<FM_;F3X9KW4WJS-,=6S/)HRF:."
MP[\WI46V/^D*'-_DQA)C^\UNQANP-X*?TX3O"/>0LW%P^@I"<VQ]VK"T<="<
M!:J-?,S(*J2:=2L]W31[&5W=B93GB.29@B3*(HBX$A 7-(8$(9%)@B+,G<Z"
M+K0Q-]*K302/C8UWM2Z17NZ+LJKK(C:GI,NU_K[6F_)'N6J6DTJZ'C!?0MN.
MQF[$,#!5-?!]Z>#S5GG#PGM?I3XOM#!M-<]^%\\*=@Y<.F(-^%:R[8=5M=W4
MT^2ZH-1+^]-#^?3P16Y,G=U%PBA*%2Y@S@H*$98<$B-PDTH<B8)'1-F%PCNT
M.3>6V-L)'AM#'=9!EC!;K!G]@Q>8'HS!8&\Q.,"QM1FT1OO'TV&EZ1_7B=:>
M'O!U6Y:Z(36X4+5\U'1+5S??CA:SCK>.7-XVM9JKK[N*<;M<I8Q'E#*8H;I4
M49Q"R@H%XR@KXH0PQB5Q6L?V-#0W5N[L=*ZA=Q51RQ6F!YP"$_ .HKV-(=*1
MK@#A:Q'8U\RTJ[TKSIXMZZY=/XX-NL*?[_6B1-MMX@FK)M,YRB-9)+F9I64Q
M1(7F!(Q);.HG<"QE5F34*0*XMZ6Y\<'O^A_7FVWYWU( 84;&G4PY-S:[<4,_
MOG;DX 6U2:9G'4BUB=[3N*_BX(D<^MN9E!VNNGM*#]=O&%W:<"7H1IR(A6DV
MVCS1I9Z8R+_*RNBBGI867A1)Q!#!"@J5Y!#E.(*$9PH661JGIOY*2JQ. 6^V
M9&[\<B*#W)G=21J6KIM"X[O(CH(F 3XP174^G$L;MF[<@4LUT=5Z PX<[.X:
MZJ(Q11=O@]=?.<:1=DQ=J/$VN"Z4<+SQ@3<7=ZS#,Q;(Y'4G>IJ5I(A I-($
MXB@OH"*I8B22L8C&%G2L&Y@;#QX7<=Q+'?Z/Z-^B*(KW:H?_#NZ?MC_7&S,C
M^W>017?ZG\W_NRP*N@7?])M33X=!&MT!\V[76^ZZJ]K?QO5O]7_-/,7D8^A_
M/<B^^'= [F(2W\41'GA<?I?F^"Y#Q%QS]NS19?F:[K<CXULZ-?AYXV'YO=JZ
M#NX@A?>._/=?;*]Y_&L5V#MR;J"HWO%U8]> A]M.GW07MU$V<9P@9.9LD5!Z
M"8ACO1A$2015*@7"^@O$L>,2\')#<V.FD_W0.V!,'1F5T NN[?KO=LBFW9VW
M16O$$G 8"F\KP)YF)EX #CM[OOZ[<OV(@[WW3Y7)-*>;__SX\4V[I8D(*FA6
M9# 31JB9Q@KB.,X@BR3/D8IPFEE10E\#<Z."QD0C&?R?#F=+EY"S.)B[$8_
MW_D!%$#;=WT#V X7AP.V&_&9Z#3M!"=/1V8#O@^>CUVZ;[K#L &KCTZ^AJ[S
M(3S?OFM<Y:1(50KKC2FD2 X)DP+&22H5%X)+F8R7F9\G@YW(G]^B'.]TK'4K
M-H'9[ 26 ,=90P $47M_C6.L(2>'E=R]?.6C]4!-->#MRW[&5-4QL-]_TM5%
MI="3C//Z']_2K=PEURSR&"%"XAAF2L^)4&IV;[B1>HYQFLI,B3QR2_Z>BV=S
MX[.=+/0M%3%F@VYH0>G7?!M"[^G?GJ;9H'.P>*T.8^$'1*K/-$;J2X"!ZB#W
M<P8JUJ'Z_[6UK[W[]?=0S [5G=YTMH,9Z&-K\\UZI=O9EB;NN?ZQ7G1L2B[C
M1<Q5G,4\@5PE2*\/9&X*-.2P4&E!A"2"N G>6;<\M_%U;Q_8&#J[:9RUQW_,
M=J@G5*?>'STPN_M+LV-@+ ^U7VJ!59 -U*%V7W%'U0*.X2U6FP>,/1C>/=DT
MV2ZZ<Y&2+,$YS%(50812!3'1*PU*28J5(H0D3NN+BZW,DXMJ(X&QTO6(]1*0
MMN>L-\(3_+#U&)D ^Q>#$'@[;[W4QL2'K@-NGI^\#EWL8Z>R4:_;!SPLXDC2
M.&(,<E%@B%3$(:%Z8J(2$E&5XDAA-G[/\K2YN3' 64E,NC-UO&+F%<3'[&_>
M@N.T.YUWG0KFWMA0>YY]H 39_3QK[!7W0?L<']X1[;UK'*_4*Z]/Z]5:3]ZI
M"6 SJC^K2BZ(0#R/8@$EIYI1BBB"F#&]U!$H3E*29!GE+HS2U]#<N*39VI&-
M<8Y!MKU@VI&%#X@"TT2#SJ&-H#72'SU<@\$3,?0V,RDE7'/VE RN7C\FA*-)
M!_AHXE6_FJV6S^KWRBB!R>T]YT\/3TM32?>M?-Q(7C8G\%'$%::20$9,W'XA
MF1%ND%!H"*(T3C1=B,5*_J"-?IA=H(>S&58?!FD^C#-CPGTD]\OE^D_C2E7'
MAHL#BUW"(-Q[99AF0H(\47!)8SRHK;\#M?WPLX+: U"[< <.G !O)P/>)3PE
M: =,%;T2H",<(UU&PS@<"./^V GC9$;[?!Q&,_XQ(_>J:/73_-]L^S_3I:P3
M5*OMIC3JDN8?[E?B^!<'5RYPQDV&N80X)ARBB%'(,HD@81E*&9-YP=#BL3XH
M^+:EFZWESM8M-KE\D:>6!=SMT4;> 29_E*N5F9BM%7@<KM<4H+=H1K-4"'-"
MPJF1=2H@P2B#+,UEE.H>*V+>]M:[E9AE7W5VA>XI:;)+7J./+#<WIT(]]"9H
M#;;Y+S@P4 ]:.]M!<XE)WCGYY>$='O=,?2#K:V_U)ENFW8/U =O97JV7AXY8
M=-4/?>+;IXT4]5#\[8DMS9\?5GS](!=22$E)C*#)ZX,(FV&/H02F6&$A4))1
MDKNNL*ZT.=/EE#82UE:"LC;382I_#62+!9,/S*8AND-+NYEY9RSXX!LZAR6/
M1P@G6M_< J7;.L82F\%%R[5G3+="L?3F:#EB>\_X!.IRV^F<OEFOS)Z97/%2
M5F_+BB_7E6YW7RF()8@7$A=0TC@V"0 "$IHG,*>2*J:HR@NG76^WYN>V%WY@
M?3T[.K+?/9/9H1]LS]]#H1O\8'X 6+"W'?P1I';3.-P\9D\[-#YY;K4[,)<R
MKT<\9:12WUXHYOOZ7HC2C(QT^866XL/J#7TLMW39RE4T:?8+3'',2,Q@+ L.
M49*DD.@UN_Y)I(F2)%4)7CS+#5M;B_BYVN#R*1Y:$NZ+W"E3F3KB!YH3X.E1
M_[C]*8'\2VYX6=57M"H\CASHWE5V-!@4_L!,>*)SM+<>&/---'WKP%VGJ^-=
M+6(T?+ZD!IW;GU:#<"P\9^*$HQ\TCAD_EI29@NB:=EL!ZWNFIYJ4;Q<9Q7F:
MX106E#$]S2,<8B0I%"**52)1'F5.U>KZFYK=E*XM#;G<6_SO;BPV *L=7?D!
M*S O'1AY4$^S,]3C7.PZ&IYH9J"A2?GDNL.GQ&%QQ\WJ6DU853OL,H440;*
M>A$805._$F(C;A,CE.<\2F/,G8KU]+0S.VXXTMHJ&PVLT?&3?>#:+^UNA&R"
M-=Q>R:HQ,JB4U24<_"M:';7R6L)6EUP=T+>Z>/G$)7+;S+5_R<IDJJW$KGKB
MVOSJH-#X23;;5VD4>/3OS3K1<-H373;%5M,B0E@F#.:8F_K@.(8T1Q%4,L6Y
M[D$1N\5TS\>UN1%?XUF]$R.[VJMZ,?*L?VU$_)H36G->.U$A7O_ODAWISL?@
M&?&\APSR78[XP8OV[N!%,[_65^UANI [OH,*'& UEPK!P?K_M2L*^W?L[U&!
M.%B'>JM8',["T0F9IN[*IK;_:UG]Y\=R)3]LY4.U2",9$Z0H3'&&S%%^ O4*
M0P_I:<0BGDM.>.Z8E=G3U-P&UB-+@3$5_&&,!;6UCB*9 PC;KBE\X!9\63$.
MLC&9FU?0\)>^V=?0U#F<5QR^D,AY[8[19%%SSW^4VY]OGO2"^T%NNEV.EZYF
M8Y0E/,&I@EF>1Q!%9I-2T0PFM$!(J$C1U*G4DDVC<R.0KF(%V,AGN1H0RQD/
MLS5W> 4O/(O4YH(_M;V@,_@.[$P.4#_3!2)_U'*]R:E)QAJ$"W1C?^\XXFEB
M:KYMZ;:>7'TTG:JYK56;SGDF4\,S"BL!D22IJ<G+H62<)85@B1).\C:#K<V-
M:AICP<Y:T)D[4M-[&&H[UO$&8&"ZN0$[9YJQPL03OPRW-2FQ6+E]RBAV-XVC
MDL,THK-!E;$,(Q3ED*0F/Y1*"6ED:D4621)AP14JG(1HAAJ;&Y%TR7%-M.C!
M0:L;?PSB:T<?OE +S!XGV80AYR@VB'CBCL&F)J4.&Z=/F</JGI'$07GSM.6Z
M*E<_6L4E1O*<Y9+ #.6&,3(,219)R(4LLH)'F!=.E> NMC(WJMC'/IN-W8XJ
M7AR)XB*>E@QQ*TJAJ:&U#[0&!E"P&H3 %Q=<;&-:$AAR\^SK'[S8[;,7LES<
MZ]F',#.0]TOZ8\$+(R&#.(PICR!*\AA2FDFH(L6%2J)4(*M/_>S)<_N\=\8!
M8YW=5WT.U_"7?!,(@;]>2_^M/]E>7R]\II7D__9C_?P_]3W-%ZI_V'^8YT^:
MY&/L=:#[ /LO&#?6?I);D[/X9;-^+H44O[W\7DGQ8?5A9<ZV]9=]S[?E<STY
M7:14%'I>3J#(L=0#,*:0)CR'L1&]18H09"J[K[=T:3< VS?M]-GN# CWVFK+
M 3?9OT_F++=<Z?^U-@.Z,]IMC';H![N!.PRZ@?G  %NG57=FFW/S7WYO4/X5
M[(P']]=A=A[GW1'S-/@[-#SIC, =D--IPH@GC%2IZ]2NZO6(J5N]R'D<H90G
M4"EI"J%&=2'4"$8FKCNB*4JE4R'4\R;F-INH#:O+RSNJTIV#9\<QMT$2F$MV
MQG7;!F^&@'$7H>OUW9?\W'D#TPK/]3IX)CG7?Z4/O7V]UI#W#^NGU7:!<ZH7
M ES!1.B5/^),+PRB)(5*4$0B)$0NG-(R^AJ:VY?]12__>?E(EX#6]MTBGW\
MI]U7[@.DP-_ZF3B^L1+<#V-UHQ3^.1!!E.\/FGE%H?MS9X=U[2]</S+<VH1O
M-X';;^M-L*;B1UW5X]W#XW+](F5]S1?]+OW4]/-%OQ@+H4B:IDS".!5&FS8K
M((DC"HNX0*C0Y*&44X6^45;,C43Z,UA7PBC:MGZTOUS7X7-U)&KSB\?6-?"H
MG^JXNAG7BW;T%+QO G-74SBP+2C?>+ K$-66/^_<:(L,=HX XXG'X-Y;@/05
MASO*AFE#9F^!Z2RZ]::'C8XM:PX5]/?]8:779C_TZUQUIRQQQ 46&8Q5G5/"
M&21&"@!G% N68,:QTPQKJ+&Y$:2V[G]+WI1H>VPM=8XGZX?6CLY\ 1:8M0[-
MK$O:M8:&J2!R%1%_X6+]34T=)G;5Z0OA8=?O<3^;>;?:[H]VO\K']<:L]4S,
MR%.U*(I8*9(06,@L-[604TAPC&&JI"!)ACC!J>U1S5!#<^.*QM9=XO?.6M"8
M:W^4,XCN]9,=7Y@%IHNQ<#F=_-A@,>H@:/#!DYT+V;AW>$QD=?W(8D--GDWU
M?KTYBE!8%(BEC"7";,MD$)$\ABS2TP<:10(EJ2!890ZBE-?:LWK#IQ>D[,QU
MK"?4!ZK=Q.$FC":J(=2:6%<].#+28^V@*S#XJAK4U\RT]8*N.'M6*>C:]1/7
M3V]S]/9:/WOYLVHG&H-)RF+&$8Q1H9<D.8DAYCF&G..XP$RR7*I):J+;6#NW
M>8IEFO#'4LE:R>-%THVKD$?8[K?<!9I+IX;>+?*8;'Z@I7;@=! 1HTFZY[6K
MB5O9^O>H$.X"N[>JWTZ-OLY(]:[1>*1L*3\]U;LZ:9RD+(HPS/,LABC%!21(
M8*B7ODI%,8E)-NGH=&;AW$:D P./M5/&*TGY[]5I!IV;^NIO-- <^'D'&D_G
M,[3T=L),AI-S^_Y60T@OO+Z'C?Z&Q@T57^5CNUKZK#ZMM[+2;9J'+V*4) ()
M!>,HSB'"1$"&&(8QYQ0I%:,HC;H]#CO.[VMJQ/;&1#L;H-4\UF][#+YM-U+J
MH>.Y7&I.7VD'W.B[%VD[%KX)O:DJ;SSN@%.@-A*T5OHCPFLX>.*SWF8FI:5K
MSIZRR]7K1U3H^;#B&Q/Q]E8V?]9G+L]EI=GH_7K3*A6;B.U"RJ106$%F,N91
M5&00XXS!A$A,&6<RR:Q"49U:G=N\;V=EO?OWY\Y.AY(SUH /$T<P& .S2&<R
M^*4SVH3$@SVPVG#P'T&!=2CJ$P+@B:K[^ +:K=*/*V"#)7^L'S9=[1]7_XZ*
M #G?/(+/O^@)I'FY?LC/ZIM>ELKJ_LNFU1>J@W#>+<L?I1XTOJ__I8>0!4F4
M8DF10Y53#I'(%,1""!BSO, "D0Q+*_W5,8W/C=W_5<]IY'^9S>3MNIX;KNI9
MN)GP-(OZL[A#_=(\R\VV')H%W=Y+%F-!0.Q#GZCM+ >?%6AL!_=@9WT;,=C9
M#[ZOP;^LY^>CX'88(0+"/M% X1M^MP%C)'Z#XX;K,Z<;/D9Z>S2*C'V&U]CU
M1HR\-[I33[(R6N1QKD>30B"(F. 0\ZR C+%<Y!D3*'>2 QUIQ]R&&*_QZS=L
M-H_L5<LMY?!]%7KC>"">O2N",!30[C&C]T8PP\:T7[5B#E'MME!9QK5;/\Z-
M<*O-=O'&)!O)S2/=;%\^Z=?S_J^R6J""I3)*8Q@7<0)1BA#$A*<0XTCB/(HB
M3JRB4_L:F!M%'MH(C)'@#V.FI3!A+XS#U.4#G,"<Y(R+-=5<<WZ(0_2]!_RA
M_[;GCM['3D(*UYSJOO:KU[W.(?V!MGM[G"M3@6*A)(P$)Q#E10:9(#',(RHS
ME:LXTC.JYB3ZVU9[,LU1_9F=+E_,J;7A/IX#,\V!/9,_RE4=0*;G8>WI_:N=
MW)]W-2N$9O4<PY3B'**LD)!AF<"HH!C%<9IG'+5=_6YE>3XW@X[N;)VLFTU
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
MZI,9>$<_WH<P_1U^C<5.5J$25&B C8)CN__?(@)V( %?6U &*57Z)L/ZUDZ
MGEK\.9P"?H;*FY/ DS@.L4>?BJ5HL\VV@9;*AGXLEI7LGU>;@HDZD&1.4D)X
M)K$^& T@X@Q#S&4,@T0RA!(<)<@H7YQMQU-;^7;$!,M*SL9=;1%]88.[04S+
M0&@.O'QHJ<&M/,@ _C(#NPC7LC>510="V"+(92"D1XIT\8BX7<"+ VR=42\V
M[8T7^N*@Y5[\B\O[KDFMA!1KU5$5XZW#;<0\#; ($AY"B5@(499&D :40!P'
M(F-<2IQ;>8A/]#$U*G\5$91:QAEX(FOP0TL*_E?PER (PNWIXU_;Q+C_(_A?
M03)3_ZK_W]Y\_"V>Q<UON"B+;\LJ*1$IP1>A0QW!E=X6J:W2IJ +?5#5=ER!
M\[L^^ORB/J_JC@.(@QG0WWP5._E>L.:W8?5;]6>5N)17_[ISX?*O &?I#*',
MIC';!%G'GXW99JGGQS#P2G0P'+,J$%"T0/M,'G46!6\IGXY[&#E1TUD5C],K
MG7_4P9:]TF!\V:R%4-3QHU@LA"),T5PYHX('L9 (ICHM XIP!O-(2)CPA,E
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
MZDKGE*U)Y^-29_G6ORRK=*</W\GR]DDW4?Y=E!O!/R[OQ+I8\;F(<(1C%,)
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
M8P)3E/$\4ER0$:M[^ XR3&T_MULE<+VKA/Y):Z'CT'6W]?;.UIWH,DIF2]+
MV ^\KNS"OB=_6T=!P_[0P*Z5&#26IP>6ON+S'208-]S>':*CZ/D>33EXO]X7
MFK'IL_H$'E8/W\4??_GRE\_DQ\O?1'U/*X@CAN(,1EF:0!2+#.8HQ% $/",Q
MP22+C5+Q&?0U->[;D18\K*I(7BTPT!);N$DN &S@E_('V\"TU848^%J+:U/
M] )T%HXD?Q".Y"_J!Z6=2\@,G$[/SX4FQG/PF.FRY\<Q?,6E6K55C6Q=I$>T
M5>-Q2G&8( '#4 80I<HJ)3)1_Q4I2S0C28X2H_#+GG),C9-?A9Q5R1VJD5B\
M@$6A=AJ\/L7\H<6WJ9+L/D@&W#T.] /SNE:BLC3W:YC.P*LFH%5%>RMVJW^)
MRK6A]1EG2&R*5X\R-&,5L!YTB"RK6/<&MKN2M7OS(U:S[HW!?D7K_LVYIB"[
M5HVLR>+CDHM?_U>\S$F4A*E (:0\SR$BG,$\RS$,D5JJ:)I0RHV2"YWM86IK
M3BTD:*0$E9A R6F;:NP0R.[5PPL\ Z\+UL@XI!0[HWV/5&*'+8Z<0NR,0L>I
MP\X].+7,VY]7BG=TJM1_"!W (_C5#[$FW\1_Z^/.]V0C/I!B75'2;C X";%D
M@20PE8A"I*,[B8@IE)G(0X&X$%+.54-T]?:YN9TTM)FGNWH.-UU;Z4$C/JCD
M!UH!H#6HK8&I9/1V^ZP,O</3DGI"E#Y>?O!7I&; [,,<),7M1+^$M\YK,Y!V
M?XX4.,,.[7@)S/N)Z69F7/%_/I=56:JRJ7#_L'H@O_Y1;+Y_7RWT4:_JY[3*
M\YP2&B1)"--0Y]>A40Y)(! 462A$+FB8\LBA9D</D8R(>?PR'->[<;0_M1YB
M455:6!3B67L!BB5;/0JP(;_J?Z[5!-H[ICZ()D_@>AN/4K?TO"QL,Z3V&6ZS
MI7KHT1M_67U=+K=3? ;:B @@M<-?C=N.@N"6+HIOGJ]D>,#5TR+51Y)1%Q0/
MD!V2OX\F^P;(7%R RG,K4%U>+ [S2&1QHMU (428($@CQ&%*DP#36$H<AVYA
M,STEFYHC:3>JHR8$VFEGEUM#FQX;VHX%XKP-NVT<SHB#.6)TCLE^J>S<, U0
MR,XWYMZC>/K*]4:Q/9[@/!_QXZL#QZL%&@_M<]2=WA?EO^KS!OU?<X$SJ>SO
M$,:8(8@"JFQSD:0PYBE.><R$1%8DW]'7U&C[6JPW1!G7:R5;645RLUWA+2WF
M+I#-*-43= .3Y)Z40 LW:P\GZQ_N5HN"O8"OS=^#1"X:0.4K_+RCIW%CQ2^K
M?!38;?"*&Z-4'HDJEXG@GPI"];EE(<KKY_5:']8+BN.8Y +&,A0094B7^ T"
MF&7*ID0HSF)N=(/6K+NI\4HCJ-JTOTIJ1R47T#5C$W^8#4PHM0^Y!6U'5,4K
MM;#^>,,,%$_4<:&S4=G#3/%# C%\RSX"X5H7&E\+<KWB8JX,D"!A6$(D8_6'
MSAU&9<(@E@$A,L!)%!D''NPV/#5>T+(!+1S0TIE'&>R!=3FXP!6"H>T&,^VM
M(@E.J>H40+#7T&AQ Z?$WPT7./GOCN[[>A+?K5=2E*4R!\CB@]@N*4G*>)9G
M&<R",--56R2D:8Z@6KXC@3&*6)K:+-C=W4UM8KXNV.(;650;@:<=P8$4M@OX
M!;0-'>3>,!QX9K?P[4H*M*@#+.!FH/AR8'=W-JZ/VDCQ(S>TV5N.G**3^92O
ME7A30N*413E$"2;J#Y%"'/( IB(-4X(DEK&5T;_?_.0XX\N7FX<OEK2P#Y@A
M#3C#,/2TKP0;)'CCM,Z^9O5^X^/.XI.*'<W:TT^YS=)/J^4W-2$>=8%!?<7P
M_>J1%,MYQA,J<HXARQ(.$8]32'' ((V".)>$<T2-[O]U=S.U6:NEA%K,JA#F
MK+YJ^[66U?+ Y0RN9I.Z/UH#3^X*J =;H*PG>C<.GB;\F4Y&G?C=BAX2P(6G
M';.ZJF_C.RG%-NA@'B>81AG%:J%.8XARG,!<L@0&"1)ID@1Y'EF1P'$74R.
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
MY>+DA]\6RW].OP6 ?]_\HY>+KV?+Z><OZQ\$$^+VWR[_%IS (@H#S.A 92G
M%>V@!.YBLDH&&?[?SW_3#EDJ3(,-5H&*3D$,#B%FDZ4T017!-Q\ZF\[_^;?Z
M)885_D#,S5>;/_[;7[ZLUU__]N./O__^^U__B,O97Q?+SS\*QN2/%[_]E^VO
M_W'G]W^7F]_FWOL?-W][^:NKZ7V_2!_+?_R?O_[R,7W!DP#3^6H=YJDNL)K^
M;;7YX2^+%-8;F3]*UP\[?Z/^"2Y^#>J/@ N0_*]_K/)?_OU??OCA7!S+Q0P_
M8/FA_O<?'][<6!+GN/Q\5DBKJ^D\_34M3GZLO_;CRP6!XGWX7(G>?,CZ["O^
MVU]6TY.OL\N??5EB^;>_8%E,H6J7><GJTO_EZA__>$7%UR6N"#@;KG^A'VP_
MHZYV#$7XQQKG&<_YO5AKMD@W?FE6I;U87OS+68@XV_QTDG$ZV7SRB[A:+T-:
M3W@**17AP'J50#'O"9&2@W16H6'1:\MN"J 2OR+J-\I98?KKY\6W'^F#?ZQ"
MJ=]LI+.1S)WESB5T&-T7>_$3_>XD>B]1,@7"*@%*BTB;@WNP,DDGH[:H]5%D
M7U_M)M77-?MBF7Y8+#,NR9A<+!>6Z8Z6;P)Y^QL_?@U+^B!(7Z:S?/&OJU5I
MH:OUHH'DSM5"Y/[E!^*ZX'*)^9=SK>QD;L/9FDPL;GZSA<;_O].PI$^<G7W
MKXOE>A)LB<&P3"R4",HP#T%F!XY%Q:(H*'ULHOQ;"^^% ]$_#HZ19R>0>(_+
MZ2*_GN=7="Q/6/#(E;+@HRWUO$S@';,0(M=,Z\B+\$T <6/9O> @^X?#X;+L
M! R?EF&^FE;!;P'-I7!6DL.4BR(>5(@0M&/ O%9:&D=_+=J<#K=6W@L2JG](
M'"71D5'Q>KZ>KL]^GL[P[>E)Q.7$&9M"41*<D9Z<[AS!*5[ 65T<,RD9:X]"
MP^T5]T*![A<%1TFP"^V_H:!N2<#="/TCR1Y?+D[GZ^79RT7&B>$*I24PJX D
M%U\4>&\,6(N!W* <,98&@'B0B+TP8GK'2#LY=P&;3^&/-YG$-RW3\WAUBW^1
M+)=H)"2Q<9 H;/<<)4BBHJ"2.3C9 # [EM\+*K9WJ+20;1<@>9$SJ6"U_0_%
M]L@GT47#$RI(61/<G1?@9#%T/(J21'+,R=P (/<LO1<X7._@.%:FG0)#3- 8
M9P(W$(W,Y$U'!2YI!1)U"LY0A*5;6(Y[EMX+&/[[ \;39-H3,%[2M^^6GQ:_
MSXF%1$%WHCB[)'*G"Q(ST4N(662.P0F64SM87"V\7R:+?2>H.%"@/6%BXS.]
M6[Y?+KY-YPDGS@I19$R CC'RFT0"AT9#,<EH%,*%@NV <6OU_=#1<:*SF6A[
M@LC[Q6H=9O][^G7C4R<;DB^&K)UCDHP?'8C.: L\N"2XE<67XQ+?N]?>#QX=
MYS\;B75D<%2K]V*)84.W3)*X)B@'7D(]"RU$E11H2R<D,NVRY4?!X?IJ^P&@
MXXSGP:(;6>7U^G3V_LMB?I&083)R80FIB7$.%&53T.0C'7?:6$[1M8M6':7V
MVRONI_J.,YM'B7!D]7_$=+HDZ'(1/TW7,YS8'"POAH.QGF)FGS,X3D$2:D6A
M,[<\^^,.@=LK[J?^CE.:1XEP9/5_6H9:H/+Q["0N9A.AM!#"A(I6BGZDRA"3
M=""SC0Y=B,$>=]=U8[G]%-]QGO)PX76RZ5__D;Z$^6=\&T[HS"I(WBOY)5YR
MHA^]!N\*A^ =J3!B$.6X:HW[5MT/ QTG((\691?AP,O39177^85<A33IX'0U
MX;[67Y'GF@K:>HX%<%%)L)([I;)T/K>(&.]??3]H=)]^;"#:+B#R9DZ?1N*8
M?L-781VV;$VLT)J;X(B%3&==R!3<(#(POC F7,I.MX#(_:OO!Y'N$Y$-1-L%
M1.JM[O)E6./GQ?)LHKG,NC !S'B2"5+8&V2R$#1'QY/TW(9&5^.7B^Y71=5]
M#O)P07:!@X\G83;[J1:=XFHU\241(0I!Z"0JEC.$X#P8S,9[JUU1QQ7,W+/H
M?CCH/MMXN""[P,'K$UQ^IB/O[\O%[^LO+Q<G7\/\;!*=C%$5"849.OFTJY<M
M+$#)0@N2%Q>LQ8EQ[^+[X:+[-./Q@NT"'Q^_X&QV0;T4C%O+-%"$S$!E4\"+
M@%!LS#&AMXRWN,V\ON9^:.@XYWBD&+L  1%^4NM[%NF?'[^0W%;O3M?UD4>-
MK"<N2SKS@@9G:W$8Q@)1B4RN<B3GV5LZ!ET#4#Q$PWX@Z3@[V5C,?8"&)+<,
MLS?SC'_\=R07266FLR7?F$>2C4 -T9KJ+PNO<HQ1FA8W5[>6W0\:'6<NCQ?F
MV/=5YZ'2S]-5"K/_A6%Y46GNI0^"8B021B%?*04%/NI(L5,.C"G)<CBN"&+7
MROMAHN.D9A.1=E*\?\7$S_41W,2C4!H+ R%$(62+>BTG$D16>);6!U:."TEW
M++P?*#K.<K80:%>8.'^7<LY$,LB$TQ15.UU?Q*H 7D4!A/?(R&OV_LC$]\ZE
M]\-%QRG.-D(=&1DOB(.\X6(6/D^*SIXSK8%9"J!(% )\LA9",8$[^I>HCD/#
MC>7V0T#'&<S#A=>%(_D!/T^K!.;KS<6-]T8DS@/0$4>.,$,'D00#J=:.2TU_
MZ8\K>;EOU?W>^G6?M#Q"E,V@\*\_WI'A+_2#8Q_PDV<\7V&F;U:+V337;@T_
MA5EM1$"Q-ZY7-_G8]V7_HY_:],G_TW@XLA? Z0H^A_!ULJF3K-;A7?EY.J?%
MIG1*+,Y?_UW!CC&>5"1\!$E&0Z("5^'BF)4&9<E,/E1P5,(J;F"Q7?1\Y^%L
MO;KXR=46? I=AQJ7BS5>K%8DUDLN X&>_M=#4-R!"M[0@6@*</K6<RF+= \]
MXSB$RYL4C--I8# D7!B@!N(>\22Z2?TV]KID(K%DI6 &9*XE)9:1$U7[*7"/
MVHD4H_$/I<H/Q\PM0L:%SC&:O1<DQXBY ZR\#*LO+^:Y_N?U?YQ.OX49,;-Z
ML7X9ELNSZ?SS_PBS4YPH1V=NB@JTEG28.]I&WC($(XB_0N<Z$P\]1#T$.WL1
MU@.6C@+ 8FAM= "Q%RG5M[:K#YB06(HS?(OKB[H$9BPG9]Z!28F!XJC!2X^
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
M[%/O&=]3'JV29A ;J0_N^XU.ON!ZFL)LH*ZXM]9XUAZY#_'WG!USC0LB($-
M51][NWK**5\@)(R*V43 ?:A'>:\=<R_7^+1)YT=N<BQ9$I>Z]A!2!CP3",DI
M.N8]II@>:L9]%)>?]KXR&;=C[E.0<$_!]Z'B[L)UVE*_*7AY5S:F]\4?T]5$
MU0##6UEOHD5]#V$@QE*?; F&4N1B8NM[_YW$= *A S2\"RQ'B;L#W%RG_]7B
MA **B:&]$LC5@UQ?,BCKB1<N!'!'S+#,E6[^\OLN%9T@Y3CUWDYQ'B?K'M"R
MF'_#Y7I*V^=F;O]7/(FXG#";58[!0>*,HA"B'T((&ICA5@L=F3"MSZA'2!H7
M1\=J_.YKD6;B[P!-E[N,W%-\0]^N)@6]*K9.3,F% EHB&!R/@>);"FNYE#E'
M/]1A=4G%V/<K[4^IPP3< 41>S&:+WVO$\?-B^6IQ&M?E=':W(_1E^PP6M5$D
M*Y=,G;>#$:(P!9(2G$QUTD4W'RKQ% ([.=0.1,/M5/=@JND =S?-*P6Z[Y8;
M\>7-W>1[7&ZFADZD=,4CV7'TLLX8Y@6\#I'XTT%S,KGZP4&;Q]<.[**L$Q/6
M!FD#**,[B)U/H7UQNOZR6$[_$_,D%R^8(_)YJ!LFF0#!!PNU3LNQI*5.K7MW
M/4S1V!?% T+J*.%W"J4WJ]4I<5)T844D SE)!8HG 0&9 QMI/\08C>2M[T]V
M4]-)\GLX"!T@]$[A<WT>MO1H+!8%1=864JDX""72%Z52QFB*\L]ABIXZA7S
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
M6)+^@,MO^-/9)_J<=Z7._KM6/Q!=T>ASC= E*$M1FO=1@_.!!6Z++*FU+W<
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
M*4&[3#(@YP."5AY*$:&VNN=.NM:>X0!\C&SV#H?5SIZP(^FX YS_%BJ[%T6
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
M@5$/>9Y&"M\'1@=(?^RSZ_T2?SZM5S];3BZ>!WF6*(A4 G2J-?C%1G#!\MJ
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
M;XVO\[7EE2496P]YQS364C?R-LD/ )-C3 8-"W88:/9:=N)1/\]W_K41_&E
M:I91JZ)KOZ3,<[TG#!"XJ%64WKGL%,.H&F)IVNK524&TEZ@[<)@>XNK5G]_F
MJXVZ:$O,EVFFL$3-@@&TKHX#805"X0Z*"5S:2!)K/UEZ %V#8.9/!V:CZ:1'
M*U7GV,\7&X[^6)[/8][RA8H9&S,'$TV=_QCJV% 1H-B\F7F?71J6KK3'HL,N
M5=GI(&E4J?>(IA>+Q06>W;;#B7-3D),[N,D'-+0U@DT*<N!6QQ2-B.E@'/VT
MW# $G=J]?'M)]XB=GVY"-A<@[\J+N&EVLKY) +OR$$M(TJ9:>.5X'76-$APO
M9(I=9#QGLLOY<'=J;W*&8>^$+N<GTM34V!Q^-_)R>58GCJSP[.^XH._K[]>=
M&)CW&RN>>*[<!@O!>0O21ZZ=8!C2L+'E1Y,R#).G=H/_O!KJ)#I87PGRY<6J
MRGZ65$158@1,0E3/,T'PV8/EQOK(#+K[72*:1 /WZ1@&L1.ZJF\F] Z \X\%
M?EVNSN?_6\<BT:99KR]J3P.*8O)BG6<LDD\I3 8>6 "5(AGHZGA*';)06I?2
MO'K]<8J&@>D$+]P;*J+_;A+O2;#S]7JY^D'!36V[4EV!(UM*//J9C?M*#*=_
MW.82.27EF$H@8JG=UJ6'@.31&ZV4UXK3PJT3Y<9I+G'WP+[,;K-%L"!K8INI
MD]ER" 3YR "MU(FK('08@[E[9$Q?-76DWA]_V=M?U!T<6A_R9H[?>UR=__BT
MPL6:9%(54K/]6>0E<,% &F%KOR]?Y_DQ<*K:XR*SEZTK(!XA9WKT'*7JGTJ]
MV\B]7PAMT[4U8BS>:7+WZ^RVS<!<SPLD*9W,DLGL6GO.CQ(T+8R:J7T8G [0
MP=0W B^J.N\Z!=N\?"YU\39Y8";9FA 6  U/4)"%R"7CR(8]#N]<HDML'*+#
M97.!]FMGUK_]N/V3S5;2"2T+RH*P7I)YIDT5<C; O<%BLQ:)MQY#-YRZGHJ%
M1SO(CM5*9WC;;L)BC,^>Z+9.451J8@'ZOC8C\RA11RYP3%QU?((=K>]'8'6
M\">$SWIU/OM]OLJ1?GS5N4=K:;TN8.(FN\9[P%*GL7.K-#>R%#7(!Z*/O@49
M^NX&+C^OV@],#M'?LHDP.[ B=^WMS0678-RXK&N/,:5!Z=H7UWH$(;55=?!G
M*:V#JQVD3%MXT/H\:B'O#F"S*U#83)]8ORNW_FW&2=&)90$\1P=*9 LAH0 A
ME'-%1<U\Z]Z/>Y#74]Q^(!P&QN['ZJ8#V/U^D3\M;_$WS^OM:\R+1?ICN8C;
MIQGIO8MU?A03F\9 ,4(0R@ KTB5ID1O=>HKN0-)Z\J[;P&T,G?3_KG%9J9]7
MW^=G9[D&K<?VR=[]@8U?- 92/NYS!F<^&E%?S:)69'>< B<Q@C%2)&31YM3Z
MVNTYGS-*X+PP<,%X4-8@!&TBV*"TPZR4'*41^"D\9^RC]V'/&<-%W</Y]7.3
M1)*&M:EX\*$V#<&:JD?G,)B2G3"F)*M:5YD?V'3TF1\O]E#LT^U&]Y%R=SBY
MU3(/E6.!9:Q*-71:EP(ARU*;0$>FL<BHQFU1VW&[T;UT/+3=Z#X"[^)MXJ?C
M?7LO$3VBC)GL+:N>/@I?BV *65Y4!1D&%H8E7S^V2D^8.%2)/SU.M)!H#]#@
MNQA10NNH6 (O:S*3L+4C6<TX"B8&*Z.UT0^&QJY5>@I\6D&CB40[.&X^7H1U
M_I\+DLRKVG#@$_UGES?D*A65+06#A'5B(TEB@TF*#8D_B@^]LK[Q:;.#E)[0
M<[R#TD+>?<+FJK-OJM9/(D0N:5<YDI#7K( N/$E7R&CF-#YP>O!3FJCZ:?@<
M(/?^ '0S2$)YHQ0(2Z>I"I%#""F!L[[$VAB:^]9/#P\2TAUP#E'RX] Y0.(=
MP.:N.?Z04_[Z[:8,=[.]0O2&%4$G+B:2429F?-9(QSHW5GJ1XLB=9!ZBJL>7
MK%91]M%:Z!Y7V]WG6!8R4EC)1*FNG6'@T=4DI>PX0X?DXSTKLGHXY5IC82^H
M':"8[L'V;G$52J F5\!H R'&.E[=!Q*9X4"1)AEMBTGD<0?,["2M9\@=@HF]
M0'>8@KK'W:=_+Z_:3(?HG$(.)$!+;#ER4)43$(5.GGP.9YOGD@TDK:=8\-EQ
M=YB"NL/=S=.S9B:RX".$%,CW])9\3Y,3)!^=U5$P;#[QY)A$H]&*5\=USPZ3
M=W>P>8TQ7^:QS(1WH:3:04!*5N&O@"PQ Z8)^R&93%9Y5-S<T-+307B@HA\%
MSX%2[PX]MPMOY^M-?XJ9"IGSY!&T-.26<I4H]'4!#/$GT15M]+CNU0-$]73
MC8&G8_70 ;#>KY8QY[1^3>*[*N!^5RJ;,SK<O639@V$YU'U"_B &\@>CC*J0
M )EO?:#MIJ:G*X<V4&HD^0XP]/MVV=?S165BTUW\;ZOENJ;C6>9T8L!M3*"8
M9H"H"W!=1(DZ1GG_K;:!4=I!3$]>42MCU$+N70!H<.?F:'P6N7:/8X(\R1 4
M!*\$:$X")#XSEG&]['X[:X]_WC73S-19!'?9>K_*W_#']JNO\XNO5QV^3%28
M'*-@Q=9*8>,0D$4-2='_&8P^Q7O)G8-Z7NU:;]H>VRWA,Y:0>\#-#2/;82ZW
M]H"*3 ?F1$T-IX.[\%BKKCAD(9 QY7D2PQ)0GEAHVD[:HR"EE5A[@,B-<#Y>
MA/^7X_FGY=]QD>I_]N/F'FS+YS8@C4(B*HR0:WMP54P= :UK_9Y3UC@>(P[K
M^W@@ =/VU1[9^(RCAKZ@]F'^^0MQN'$*'V#S:O+9I=.(9^N9U%)S4R2%%<G5
MQW($G[* :!.WR!+R,&P6TW%T3-MI>V3@C:J4J?%WJY'8C;%^LXBKC.N\J::Z
MXNM=N>'YW>;OF<G"ZZCJB5]2[9Y*#H!+'B29=.Z,C(D/F\=T#!43-^=N#KYG
MTT@'0>/'\V7\5[TXR>GWB]5\\?GR76G3MO?E<O&=%JJ\E<NOS^<DDX\YTF]N
MYCT6P11Z[4 7QD#5"[O@C"41AYR"5E'>;^%]?&[6,01/W 1\C-CR^138 5KO
M"O EKE8_B..MT^&X]C8&!BQ' TIC!N><AJR#*25+J<VX/0KNTC-QT^_Q[S&.
M$']W4'K@#6(;8+]8W&G+NKD>_".?SYB2*D;CP:(B%\/E -X8#C(02J25R=GV
ME[)'D3QQQ^])'I(:*G%J/_'>1=!/CLD;\G_/YNOSG.I;R-;&_WCU9_R""XK^
M;2YE,XNY2(K&E'>"6%4!"D?'/%HG=3@@3MF7CHE[@H]]/3>F5OKO@O#^_?NW
M2UP<V\_Y[J>T[N#\"(WC-CEPSCHAI0*C:B?O.BP8#6F=%Z-<2CHX-T8*W?,T
M.2A,),$Y.9*^U,=60Q&WX0Q\+"EXQY5R?]6>S?OH?4B3@WU$W9VC=5GMQ+F2
M+I"9$YQ<1:LTH+6:3F&1."\251PW:;[/)@=[*?;I)@?[2+D[G-RJR0U1))^=
M Q'KNT6D,](I.INE$!:=#2SQ<>.ZCIL<[*7CH4T.]A'XU%[Q>_P1O^3XK_>K
MY7G>-#&CKSZO\.O+%Q]>?7P1KVK:"@9KN$5@B:2E H6H 6,!SI,K5C =^+!V
MS ,7[ DIAZIV.;*<NS,Z-_$ "I_1!PLR.D^FV"OP6@FP=)9GQH359MS&*F_W
M2D-_UE+W=L?48?+N #:WLPYK-/%N-?^\'=JYYC-D/"41R.&32,&DV'0"*0*R
MIR OE*#,_2?!IBF?/Q'4DRTZ4.6/9'T>)_\.P+1'=IBSV7N1#60>'-3;>7"8
M(BAE-9.^Q,+'34\_.F_OV>^[CX'92)J9VF?Z&WD";Y?K];O%:_K\^?>\R/3-
M9=*TL*R@$>0@9)VW_:H#8Q!\5#$QKS*/@_RD1Q;I,PO]$* T%6??]WMO%O1E
M_H1_YO4?N*J#SK\?,[CML8]K>.,WF.I&5W_7ZSUP#R23"\Z8#"&R!,KX1%B0
M 6QQ+N8DR3=N?>OQ"#G'GEKOON4JSL7G"OW-4V!9KOZ-J[2^]!)U*)DKKH"'
M6O.JA057# 6JVND<?6V-WKJEZQ,D3>L&M4+&_3.JI1XZ<(:NQ?3BXOS+LKZ5
M;.XY**3@"DT"IFH]6, ,&&4&G7/,@<? L+5+_3 ETX*HJ;*7S27?)7ZV-Q^9
M!".CRB"58^26!0V.UXVF9*B%8M*QULWK=M'2B2$Z0L]/0N< H7< 'J*:_/MY
M?%E3!U8_KCIZ<.^*($\PQ$RN?:GS/8)34,O#A*QW9J)Y_^Z'".D--H?H^'Z
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
M\;3[MJ/KTV<$SB]PX-UZCGG\;LN5(GA4@#'484E8(,2L@(LD59"9I=1;4L=
MUJ8M9^MHXXP!A5]@A[Q(:=/@&L]^GZ_CV7)=?>=KA3EI2XRU<Z)+B<P%^1$A
MN@S)1"6#C$9@;_OB488&[0;[%]@-[=3>RQX(3PLC[.VG?LBU+2/]^\OE8B.:
M"SRKG4G$3(B4 BL*6);DLY94E8<,6+!!(JF5\5$JC9Z7S=-^B&L(\E8M;YX)
M<;_ IMS;T=TE.3X3S.D0;00A' /EC(8@BP ;E.-,6SKP1TDPZ8+[05O8G<J1
MUX5(]P+4+[ 5=[O.NT7DG4S&"$4V59(;;9,#C\)"+M%FM#J3 >MLSQW YJ#-
MY?\"FVMLB)Q:*Y /9%DHG*QC\.K/_K&8GZ^;=O]X;(%1&WX,YFR<'A_1D*,F
M! =O:O\8(7F=?)8AYF(].I:,:_TTT>MH'5&"5L87L-;4_:-)*")QL-(E^A.8
M]KJUB?TE1^OL@ZGQ1NOLH\X.G(J[$S>*9<HK2](S=?0M9Q1,!9[ \9BC<S9K
M]I_1.JU!\.AHG7TTT@&<#A?<(^,TO/6<1ZM !'(N%,^1V.<6?*%XN7"ODVL]
MK60,/GH:K;,7K)YCM,X^.NX YP^Y3Q\^_N-J4DN.RA4A0)?Z6L^$!PRJWO%$
M):/3Z&+K(_U1@CJ__QL=+\NQE-<!$@^^77U[W6JRL)01181L9:XS40,X<IB
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
MR3C(%+1C(48=GNEP.C3=?KP<D&<ZJXY52V> V^X]3H2J7!L!21N)@RB( V&
M!U9T]B5&-N:K1<>'U-'Z?CJ;?A_A]Y5-[RTK5D8#NM93;<A'84@0W 93A#7%
M#>JM==K9]'OI;W<V_3["[,"*/-!.3,3HK44+.5@Z>!V=X$&8!$59J:VU09?6
M<\\/;,PW7G)'ZV/H2#%W!Y1;W<0*C\%'Y<B,UK3;@KZVTBE [IXHQ$?1J;4W
M<S*=^?;2\=#.?/L(?.J(Z!U91K**FQ?7JH><;GGXL3@A=*2SUWM!TK&YA@JF
MEO!*HYW6_OX$EQWAT6.K](2)0Y6X'$.B4T.CYO#SC^>KG.D#O\_/SO+MX ]I
MLX12!Y+0=E'H @3RR(#LKRDR"#1*#8+&8ZOTU)*J!32:271J:-RM[-A84EDL
M\N)-'3[""-DE$>6UWV!209)D@E(#^^;]]-G3MF=IYFJTD%Q?BM_NA]H=._B<
M 2/1KHR@0S1*!]J2)$1@D;%R@.JG=!F:Z&JWW@\0W.2:?_ \XSGY($*=3R^K
M_U0,^*(D151$/I/,\?N=Y7;V+NS&-6BDKV53X7408-2GS7?EU@37S8[(T=<G
MA7KZ96(B9MH,0G$HEH44N8E2MD[)>I"005@QW1\2[83= 6)ND;^^S.+$FW^Y
M??EWU99:)W* #8)PJ&E_T5]U,G@=XILD[1651.M(=4\2IPU6&H!B^7P:FOK$
M>O5G_%)9>?&9'.ZO-UD41>=DD!40@42ED*?Z%)9K-WZ),8OBR[!'OQT+3(N1
M436Z;"S>#FS4/<O]]CJ9W3,4B41 BH^JIM@H""Y$, G_?W77TMHP#(/O^R\&
M)TYDY[+3& S6,=;=AV7):S?2C*;9X]_/'F6/PR!MG<Z[!!(3$-*G6(X>GRZX
M!&?&,9+N7]YTN5,CG?XW>UL2E6< G5U:KRP:0!TB/*>:F,LJ2:!V7GACPXVL
M#;DC323)KS\N#1X.Z(O;Q3@9X.[[L.F+OA_LRO%VO"NQT5X6P0^!?7!++$5X
M8(0J+8,%:12D+@7_79JLJNK2H"J1ZO<&T3.OL9LD870>]N8M#2(H\ X:+TA)
MCMS32ABR1>1>4%!SH[F9ELKI2Y:LBEW20"B)VC/X"LTWG7N,/L!T-JR7J_MK
M7B\[FB^":OLK?OE8ZN\*Y:QNC!)8Q?A2%B$2K(*^) $:5X&J5>HSW3C)LDI@
MIX'6!";YZT/<3V\)6GM@M[GM9G9%\;6W&R9NGZ+59O9UV0[MIS-IE ;CSS1+
MHJ)P &E\C0(D5A45P#B226Q/ ;+*61R&KJ/98?IVW>U"O*#M^?3D'5!+ 0(4
M Q0    ( $Y":E58O^6.RA0  ,M@   ;              "  0    !A,C R
M,C Y,S!E>&AI8FET,3 Q,3 M<2YH=&U02P$"% ,4    " !.0FI5&G8!#T0/
M  !;9@  &P              @ $#%0  83(P,C(P.3,P97AH:6)I=#$P,S$P
M+7$N:'1M4$L! A0#%     @ 3D)J56<U*X/D#@  %U(  !L
M ( !@"0  &$R,#(R,#DS,&5X:&EB:70Q,#0Q,"UQ+FAT;5!+ 0(4 Q0    (
M $Y":E7'&WL;XPX  !M2   ;              "  9TS  !A,C R,C Y,S!E
M>&AI8FET,3 U,3 M<2YH=&U02P$"% ,4    " !.0FI5_X;#G%,'   =)@
M&P              @ &Y0@  83(P,C(P.3,P97AH:6)I=#,Q,3$P+7$N:'1M
M4$L! A0#%     @ 3D)J5?(3_9%L!0  RQ@  !L              ( !14H
M &$R,#(R,#DS,&5X:&EB:70S,C$Q,"UQ+FAT;5!+ 0(4 Q0    ( $Y":E47
MA31JET8" #56&0 1              "  >I/  !E9F]I+3(P,C(P.3,P+FAT
M;5!+ 0(4 Q0    ( $Y":E7Z+764=1,  !S7   1              "  ;"6
M @!E9F]I+3(P,C(P.3,P+GAS9%!+ 0(4 Q0    ( $Y":E6;M=>=O!D  !'W
M   5              "  52J @!E9F]I+3(P,C(P.3,P7V-A;"YX;6Q02P$"
M% ,4    " !.0FI52#*%'>%N  !8U00 %0              @ %#Q ( 969O
M:2TR,#(R,#DS,%]D968N>&UL4$L! A0#%     @ 3D)J55\\A4\V\0  "_X)
M !4              ( !5S,# &5F;VDM,C R,C Y,S!?;&%B+GAM;%!+ 0(4
M Q0    ( $Y":E75+;ZN;9X  "PS!P 5              "  < D! !E9F]I
G+3(P,C(P.3,P7W!R92YX;6Q02P4&      P # !  P  8,,$

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